Skip to contentSkip to conversation

Use llvmpile for mesa on x86/x86-64

PATCH Superseded Khem Raj 4 participants 21 messages Aug 19, 2018 – Aug 20, 2018

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

v2 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

The following changes since commit 007ef1f468110b2698a27ea9a6d43fed5a0a9fc2:

kernel-devsrc: restructure for out of tree (and on target) module builds (2018-08-19 16:33:41 +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 (9):
mesa: Enable gallium-llvm on x86 and x86_64
powerpc: Remove pie flags from compiler cmdline
llvm: Point llvm-config to one built with llvm-native dos2unix.bbclass: Move to oe-core
llvm: Use YOCTO_ALTERNATE_MULTILIB_NAME environment variable in
llvm-config
mesa: Define YOCTO_ALTERNATE_MULTILIB_NAME to consider multilib names
binutils: Update past 2.31.1 release
gdb: Upgrade to 8.1.1
libidn2: Fix libunistring detection

 meta/classes/dos2unix.bbclass                 | 14 ++++++
 meta/conf/distro/include/security_flags.inc   |  7 +--
 .../binutils/binutils-2.31.inc                |  2 +-
 .../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}          |  0
 ...-llvm-allow-env-override-of-exe-path.patch | 47 ++++++++++++++++---
 meta/recipes-devtools/llvm/llvm_git.bb        |  4 +-
 meta/recipes-extended/libidn/libidn2_2.0.5.bb |  4 ++
 meta/recipes-graphics/cairo/cairo.inc         |  3 +-
 meta/recipes-graphics/mesa/mesa.inc           |  4 ++
 12 files changed, 72 insertions(+), 17 deletions(-)
 create mode 100644 meta/classes/dos2unix.bbclass
 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%)
Signature · 1 line
2.18.0
author
#1 lore raw

PATCH v2 1/9 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
index 20e0d2c92a..7347f223ff 100644
@@ -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
index 6aedeee9dc..2671d4de4d 100644
@@ -47,6 +47,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
author
#5 lore raw

PATCH v2 2/9 powerpc: Remove pie flags from compiler cmdline

In reply to Khem Raj

Original approach to add -no-<pie> flags cause link time behavior changes where packages start to lose the -fPIC -DPIC in compiler cmdline and this list keeps growing as we build more and more packages,

Instead lets just remove the options we dont need from SECURITY_CFLAGS this makes it more robust and less intrusive

This also means we do not need to re-add pic options as we started to do for affected packages

---
 meta/conf/distro/include/security_flags.inc | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)
meta/conf/distro/include/security_flags.inc +2 -5
index 52e1e4ebc5..4e20a4d0f8 100644
@@ -28,13 +28,10 @@ SECURITY_LDFLAGS ?= "-fstack-protector-strong -Wl,-z,relro,-z,now"
 SECURITY_X_LDFLAGS ?= "-fstack-protector-strong -Wl,-z,relro"
 
 # powerpc does not get on with pie for reasons not looked into as yet
-SECURITY_CFLAGS_powerpc = "-fstack-protector-strong ${lcl_maybe_fortify} ${SECURITY_NOPIE_CFLAGS}"
-SECURITY_CFLAGS_pn-libgcc_powerpc = ""
-SECURITY_CFLAGS_append_powerpc_pn-libdrm = " -fPIC -DPIC"
-SECURITY_CFLAGS_append_powerpc_pn-libinput = " -fPIC -DPIC"
-SECURITY_CFLAGS_append_powerpc_pn-at-spi2-core = " -fPIC -DPIC"
 GCCPIE_powerpc = ""
 GLIBCPIE_powerpc = ""
+SECURITY_CFLAGS_remove_powerpc = "${SECURITY_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-libgcc_powerpc = ""
 
 SECURITY_CFLAGS_pn-glibc = ""
 SECURITY_CFLAGS_pn-glibc-initial = ""
Signature · 1 line
2.18.0
author
#6 lore raw

PATCH v2 3/9 llvm: Point llvm-config to one built with llvm-native

In reply to Khem Raj

If not defined, llvm build system tries to build one which then confuses the OE QA system since its building native tool and target packages in same package build moreover it is not required since we already have it via llvm-native

Fixes
ERROR: llvm-6.0-r0 do_package_qa: QA Issue: llvm: The compile log indicates that host include and/or library paths were used.

---
 meta/recipes-devtools/llvm/llvm_git.bb | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
meta/recipes-devtools/llvm/llvm_git.bb +3 -1
index bb83012231..d853d4151d 100644
@@ -64,17 +64,19 @@ EXTRA_OECMAKE += "-DLLVM_ENABLE_ASSERTIONS=OFF \
                   -DLLVM_ENABLE_FFI=ON \
                   -DFFI_INCLUDE_DIR=$(pkg-config --variable=includedir libffi) \
                   -DLLVM_OPTIMIZED_TABLEGEN=ON \
-                  -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS}" \
+                  -DLLVM_TARGETS_TO_BUILD='${LLVM_TARGETS}' \
                   -G Ninja"
 
 EXTRA_OECMAKE_append_class-target = "\
                   -DCMAKE_CROSSCOMPILING:BOOL=ON \
                   -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen${PV} \
+                  -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \
                  "
 
 EXTRA_OECMAKE_append_class-nativesdk = "\
                   -DCMAKE_CROSSCOMPILING:BOOL=ON \
                   -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen${PV} \
+                  -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \
                  "
 
 do_configure_prepend() {
Signature · 1 line
2.18.0
author
#7 lore raw

PATCH v2 4/9 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.

---
 meta/classes/dos2unix.bbclass | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 meta/classes/dos2unix.bbclass
meta/classes/dos2unix.bbclass new file +14 -0
new file mode 100644
index 0000000000..3fc17e2196
@@ -0,0 +1,14 @@
+# Class for use to convert all CRLF line terminators to LF
+# provided that some projects are being developed/maintained
+# on Windows so they have different line terminators(CRLF) vs
+# on Linux(LF), which can cause annoying patching errors during
+# git push/checkout processes.
+
+do_convert_crlf_to_lf[depends] += "dos2unix-native:do_populate_sysroot"
+
+# Convert CRLF line terminators to LF
+do_convert_crlf_to_lf () {
+	find ${S} -type f -exec dos2unix {} \;
+}
+
+addtask convert_crlf_to_lf after do_unpack before do_patch
Signature · 1 line
2.18.0
author
#12 lore raw

PATCH v2 5/9 llvm: Use YOCTO_ALTERNATE_MULTILIB_NAME environment variable in llvm-config

In reply to Khem Raj

llvm-config is a tool on similar veins as pkg-config but provides a lot more information and packages which use llvm e.g. mesa use this tool to poke for llvm related informaiton e.g. version, libpath, includepaths to name a few, this has few challanges in cross build environments where llvm-config is supposed to be build for buildhost but provide information about target llvm which is addressed by building native llvm-config along with target llvm build, but this is frowned upon by OE build system since it detects that host paths are being used so we have to build it as part of llvm-native but then it means install paths for llvm and llvm-native are different and wrong paths get reported when llvm-config is used. This is solved by providing YOCTO_ALTERNATE_EXE_PATH variable to let llvm-config use that path instead of self-relative path to report back

Second problem is when building multi-lib packages base_libdir is different for target packages but native llvm-config does not know about it so it reports non-multilibbed paths as libdir and packages can not find llvm in sysroot. This is fixed by adding another environment variable YOCTO_ALTERNATE_MULTILIB_NAME which can be set from recipes to set proper multilib path

---
 ...-llvm-allow-env-override-of-exe-path.patch | 47 ++++++++++++++++---
 1 file changed, 40 insertions(+), 7 deletions(-)
meta/recipes-devtools/llvm/llvm/0002-llvm-allow-env-override-of-exe-path.patch +40 -7
index 21d2f81b58..6a9283323c 100644
@@ -1,4 +1,4 @@
-From 2f8ea767afdaa440c6368040630e1b3ea6a0977a Mon Sep 17 00:00:00 2001
+From aeccf16eaccdd80e4d5ecaa51673ce4b2bac1130 Mon Sep 17 00:00:00 2001
 From: Martin Kelly <[email protected]>
 Date: Fri, 19 May 2017 00:22:57 -0700
 Subject: [PATCH 2/2] llvm: allow env override of exe path
@@ -8,16 +8,19 @@ return the libraries, include directories, etc. from inside the sysroot rather
 than from the native sysroot. Thus provide an env override for calling
 llvm-config from a target sysroot.
 
+To let it work in multilib environment, we need to provide a knob to supply
+multilib dirname as well
+
+Upstream-Status: Inappropriate [OE-Specific]
+
 Signed-off-by: Martin Kelly <[email protected]>
 Signed-off-by: Khem Raj <[email protected]>
 ---
-Upstream-Status: Pending
-
- tools/llvm-config/llvm-config.cpp | 7 +++++++
- 1 file changed, 7 insertions(+)
+ tools/llvm-config/llvm-config.cpp | 17 ++++++++++++++++-
+ 1 file changed, 16 insertions(+), 1 deletion(-)
 
 diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
-index 08b096afb05..d8d7742744e 100644
+index 08b096afb05..360cc5abf4e 100644
 --- a/tools/llvm-config/llvm-config.cpp
 +++ b/tools/llvm-config/llvm-config.cpp
 @@ -225,6 +225,13 @@ Typical components:\n\
@@ -34,6 +37,36 @@ index 08b096afb05..d8d7742744e 100644
    // This just needs to be some symbol in the binary; C++ doesn't
    // allow taking the address of ::main however.
    void *P = (void *)(intptr_t)GetExecutablePath;
+@@ -306,12 +313,20 @@ int main(int argc, char **argv) {
+   std::string ActivePrefix, ActiveBinDir, ActiveIncludeDir, ActiveLibDir,
+               ActiveCMakeDir;
+   std::string ActiveIncludeOption;
++  // Hack for Yocto: we need to override the multilib path when we are using
++  // llvm-config from within a target sysroot.
++  std::string Multilibdir = std::getenv("YOCTO_ALTERNATE_MULTILIB_NAME");
++  if (Multilibdir.empty()) {
++    Multilibdir = "/lib" LLVM_LIBDIR_SUFFIX;
++  }
++
+   if (IsInDevelopmentTree) {
+     ActiveIncludeDir = std::string(LLVM_SRC_ROOT) + "/include";
+     ActivePrefix = CurrentExecPrefix;
+ 
+     // CMake organizes the products differently than a normal prefix style
+     // layout.
++
+     switch (DevelopmentTreeLayout) {
+     case CMakeStyle:
+       ActiveBinDir = ActiveObjRoot + "/bin";
+@@ -336,7 +351,7 @@ int main(int argc, char **argv) {
+     SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+     sys::fs::make_absolute(ActivePrefix, path);
+     ActiveBinDir = path.str();
+-    ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
++    ActiveLibDir = ActivePrefix + Multilibdir;
+     ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
+     ActiveIncludeOption = "-I" + ActiveIncludeDir;
+   }
 -- 
-2.16.1
+2.18.0
 
Signature · 1 line
2.18.0
author
#13 lore raw

PATCH v2 6/9 mesa: Define YOCTO_ALTERNATE_MULTILIB_NAME to consider multilib names

In reply to Khem Raj
---
 meta/recipes-graphics/mesa/mesa.inc | 1 +
 1 file changed, 1 insertion(+)
meta/recipes-graphics/mesa/mesa.inc +1 -0
index 2671d4de4d..dd626d9f00 100644
@@ -34,6 +34,7 @@ PLATFORMS ??= "${@bb.utils.filter('PACKAGECONFIG', 'x11 wayland', d)} \
 
 export LLVM_CONFIG = "${STAGING_BINDIR_NATIVE}/llvm-config${MESA_LLVM_RELEASE}"
 export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE}/llvm-config"
+export YOCTO_ALTERNATE_MULTILIB_NAME = "${base_libdir}"
 EXTRA_OECONF = "--enable-shared-glapi \
                 --disable-opencl \
                 --enable-glx-read-only-text \
Signature · 1 line
2.18.0
author
#14 lore raw

PATCH v2 7/9 binutils: Update past 2.31.1 release

In reply to Khem Raj

list of changes in this rev bump

* a69de9c7cf ld-x86-64/pr23486b.d: Swap pr23486a.s and pr23486a.s
* 28a27bdbb9 x86: Properly add X86_ISA_1_NEEDED property
* d692290444 x86: Replace evex-no-scale.s with evex-no-scale-[32|64].s
* d55c3e3609 x86: Properly merge GNU_PROPERTY_X86_ISA_1_USED
* 381c1eb6ec x86: Update assembler tests for non-ELF targets
* 9b075c7167 x32: Align the .note.gnu.property section to 4 bytes
* 4aa5eb02fd __tls_get_addr_opt stubs and tocsave optimization
* 95fbde6791 Re: PowerPC64 __tls_get_addr_opt stub .eh_frame fix
* 079a6882b5 PowerPC64 __tls_get_addr_opt stub .eh_frame fix
* 1d8f56a971 Updated Bulgarian translation for the ld/ directory
* b7991db94c Add --warn-drop-version option; by default, do not warn when discarding version info.
* dbf924a63a Fix type checking errors.
* 60b3b24ca1 Fix spurious check-ld failures on aarch64-elf
* feaed90494 [PATCH, LD, AArch64] Fix ifunc testisms
* 2069ccaf8d x86: don't mistakenly scale non-8-bit displacements
* 254ade2586 Fix unwind offset for call_info->start_symbol.
* 29153520a8 S/390: Set the htm flag on PPA
* 6737a6b34f x86: Add a GNU_PROPERTY_X86_ISA_1_USED note if needed
* 01683b308a x86: Split vcvtps2{,u}qq and vcvttps2{,u}qq
* be8a252e18 Set the development flag back to true.
* 0860693812 (tag: binutils-2_31_1) Regenerate files and add changelog entries for 2.31.1 release
* 4afd6a72e3 Fix typo in src-release.sh script. Update French translation for gold and Spanish translation for ld.

---
 meta/recipes-devtools/binutils/binutils-2.31.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-devtools/binutils/binutils-2.31.inc +1 -1
index 6603873ba2..bc951d73e4 100644
@@ -18,7 +18,7 @@ BINUPV = "${@binutils_branch_version(d)}"
 
 UPSTREAM_CHECK_GITTAGREGEX = "binutils-(?P<pver>\d+_(\d_?)*)"
 
-SRCREV ?= "f8b4d71490df766ca9c474f7ab9c82b3a8029a5a"
+SRCREV ?= "4568e49ff799192fea4f66063fe13e2b871ec75a"
 BINUTILS_GIT_URI ?= "git://sourceware.org/git/binutils-gdb.git;branch=binutils-${BINUPV}-branch;protocol=git"
 SRC_URI = "\
      ${BINUTILS_GIT_URI} \
Signature · 1 line
2.18.0
author
#15 lore raw

PATCH v2 8/9 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
similarity index 89%
rename from meta/recipes-devtools/gdb/gdb-8.1.inc
rename to meta/recipes-devtools/gdb/gdb-8.1.1.inc
index 4d9faa2d4b..ad80dd3e4d 100644
@@ -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
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.bb
rename to meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.1.bb
meta/recipes-devtools/gdb/gdb-cross_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb-cross_8.1.bb +0 -0
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb-cross_8.1.bb
rename to meta/recipes-devtools/gdb/gdb-cross_8.1.1.bb
meta/recipes-devtools/gdb/gdb_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb_8.1.bb +0 -0
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb_8.1.bb
rename to meta/recipes-devtools/gdb/gdb_8.1.1.bb
Signature · 1 line
2.18.0
author
#20 lore raw

PATCH v2 9/9 libidn2: Fix libunistring detection

In reply to Khem Raj

libunistring is one such library which many autotooled packages mistake to use from build system if its installed on it. This is specifically toxic when build host arch is same as target arch since we only see the problem during runtime but thankfully OE has build time QA which warns about it.

QA Issue: libidn2: The compile log indicates that host include and/or library paths were used.

Using --with-libunistring-prefix nudges the autoconf system for the component to first look into target sysroot before going on to search on the build host

---
 meta/recipes-extended/libidn/libidn2_2.0.5.bb | 4 ++++
 1 file changed, 4 insertions(+)
meta/recipes-extended/libidn/libidn2_2.0.5.bb +4 -0
index 0d7bddbc7f..0daf7a6877 100644
@@ -19,6 +19,10 @@ DEPENDS = "virtual/libiconv libunistring"
 
 inherit pkgconfig autotools gettext texinfo gtk-doc lib_package
 
+EXTRA_OECONF += "--disable-rpath \
+                 --with-libunistring-prefix=${STAGING_EXECPREFIXDIR} \
+                 "
+
 LICENSE_${PN} = "(GPLv2+ | LGPLv3)"
 LICENSE_${PN}-bin = "GPLv3+"
 
Signature · 1 line
2.18.0
#16 lore raw

Re: [PATCH 8/9] gdb: Upgrade to 8.1.1

In reply to Khem Raj

There's a build failure on autobuilder.

https://autobuilder.yocto.io/builders/nightly-musl-x86-64/builds/700/steps/BuildImages/logs/stdio

| x86_64-poky-linux-musl-g++ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot -shared -fPIC -Wl,--soname=libinproctrace.so -Wl,--no-undefined -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0=/usr/src/debug/gdb/8.1.1-r0 -fdebug-prefix-map=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot= -fdebug-prefix-map=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot-native= -fvisibility-inlines-hidden -I. -I../../../gdb-8.1.1/gdb/gdbserver -I../../../gdb-8.1.1/gdb/gdbserver/../common -I../../../gdb-8.1.1/gdb/gdbserver/../regformats -I../../../gdb-8.1.1/gdb/gdbserver/.. -I../../../gdb-8.1.1/gdb/gdbserver/../../include -I../../../gdb-8.1.1/gdb/gdbserver/../gnulib/import -Ibuild-gnulib-gdbserver/import -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable -Wno-sign-compare -Wno-narrowing -Wno-error=maybe-uninitialized -DGDBSERVER \ | -static-libstdc++ -static-libgcc -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,--dynamic-list=../../../gdb-8.1.1/gdb/gdbserver/proc-service.list -o libinproctrace.so ax-ipa.o common-utils-ipa.o errors-ipa.o format-ipa.o print-utils-ipa.o regcache-ipa.o remote-utils-ipa.o rsp-low-ipa.o tdesc-ipa.o tracepoint-ipa.o utils-ipa.o vec-ipaERROR: Task (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/meta/recipes-devtools/gdb/gdb_8.1.1.bb:do_compile) failed with exit code '1' .o linux-amd64-ipa.o linux-x86-tdesc-ipa.o arch/amd64-ipa.o -ldl -pthread | /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux-musl/../../libexec/x86_64-poky-linux-musl/gcc/x86_64-poky-linux-musl/8.2.0/ld: common-utils-ipa.o: in function is_regular_file(char const*, int*)': | /usr/src/debug/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/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 1 | make[4]: *** Waiting for unfinished jobs.... | make[4]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/gdb/gdbserver' | make[3]: *** [Makefile:2027: subdir_do] Error 1 | make[3]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/gdb' | make[2]: *** [Makefile:1621: all] Error 2 | make[2]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/gdb' | make[1]: *** [Makefile:8793: all-gdb] Error 2 | make[1]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl' | make: *** [Makefile:850: all] Error 2 | ERROR: oe_runmake failed

Best Regards,
Chen Qi

Quoted 40 lines · 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
similarity index 89%
rename from meta/recipes-devtools/gdb/gdb-8.1.inc
rename to meta/recipes-devtools/gdb/gdb-8.1.1.inc
index 4d9faa2d4b..ad80dd3e4d 100644
@@ -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
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.bb
rename to meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.1.bb
meta/recipes-devtools/gdb/gdb-cross_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb-cross_8.1.bb +0 -0
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb-cross_8.1.bb
rename to meta/recipes-devtools/gdb/gdb-cross_8.1.1.bb
meta/recipes-devtools/gdb/gdb_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb_8.1.bb +0 -0
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb_8.1.bb
rename to meta/recipes-devtools/gdb/gdb_8.1.1.bb
author
#17 lore raw

Re: [PATCH 8/9] gdb: Upgrade to 8.1.1

Quoted 5 lines · ChenQi

There's a build failure on autobuilder.

https://autobuilder.yocto.io/builders/nightly-musl-x86-64/builds/700/steps/BuildImages/logs/stdio

I pushed a patch to pull branch which should fix it
http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/master&id=a05cc1ee8eb1cb05064164a9ae62db6dc78d022b

Quoted 66 lines

| x86_64-poky-linux-musl-g++ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot -shared -fPIC -Wl,--soname=libinproctrace.so -Wl,--no-undefined -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0=/usr/src/debug/gdb/8.1.1-r0 -fdebug-prefix-map=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot= -fdebug-prefix-map=/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot-native= -fvisibility-inlines-hidden -I. -I../../../gdb-8.1.1/gdb/gdbserver -I../../../gdb-8.1.1/gdb/gdbserver/../common -I../../../gdb-8.1.1/gdb/gdbserver/../regformats -I../../../gdb-8.1.1/gdb/gdbserver/.. -I../../../gdb-8.1.1/gdb/gdbserver/../../include -I../../../gdb-8.1.1/gdb/gdbserver/../gnulib/import -Ibuild-gnulib-gdbserver/import -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable -Wno-sign-compare -Wno-narrowing -Wno-error=maybe-uninitialized -DGDBSERVER \
| -static-libstdc++ -static-libgcc -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,--dynamic-list=../../../gdb-8.1.1/gdb/gdbserver/proc-service.list -o libinproctrace.so ax-ipa.o common-utils-ipa.o errors-ipa.o format-ipa.o print-utils-ipa.o regcache-ipa.o remote-utils-ipa.o rsp-low-ipa.o tdesc-ipa.o tracepoint-ipa.o utils-ipa.o vec-ipaERROR: Task (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/meta/recipes-devtools/gdb/gdb_8.1.1.bb:do_compile) failed with exit code '1' .o linux-amd64-ipa.o linux-x86-tdesc-ipa.o arch/amd64-ipa.o -ldl -pthread

| /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux-musl/../../libexec/x86_64-poky-linux-musl/gcc/x86_64-poky-linux-musl/8.2.0/ld: common-utils-ipa.o: in function `is_regular_file(char const*, int*)':
| /usr/src/debug/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/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 1
| make[4]: *** Waiting for unfinished jobs....
| make[4]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/gdb/gdbserver'
| make[3]: *** [Makefile:2027: subdir_do] Error 1
| make[3]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/gdb'
| make[2]: *** [Makefile:1621: all] Error 2
| make[2]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl/gdb'
| make[1]: *** [Makefile:8793: all-gdb] Error 2
| make[1]: Leaving directory '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/gdb/8.1.1-r0/build-x86_64-poky-linux-musl'
| make: *** [Makefile:850: all] Error 2
| ERROR: oe_runmake failed

Best Regards,
Chen Qi

On 08/20/2018 01:23 AM, Khem Raj wrote:

---
 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
similarity index 89%
rename from meta/recipes-devtools/gdb/gdb-8.1.inc
rename to meta/recipes-devtools/gdb/gdb-8.1.1.inc
index 4d9faa2d4b..ad80dd3e4d 100644
@@ -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
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.bb
rename to meta/recipes-devtools/gdb/gdb-cross-canadian_8.1.1.bb
meta/recipes-devtools/gdb/gdb-cross_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb-cross_8.1.bb +0 -0
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb-cross_8.1.bb
rename to meta/recipes-devtools/gdb/gdb-cross_8.1.1.bb
meta/recipes-devtools/gdb/gdb_8.1.1.bb renamed from meta/recipes-devtools/gdb/gdb_8.1.bb +0 -0
similarity index 100%
rename from meta/recipes-devtools/gdb/gdb_8.1.bb
rename to meta/recipes-devtools/gdb/gdb_8.1.1.bb
#8 lore raw

Re: [PATCH 4/9] dos2unix.bbclass: Move to oe-core

In reply to Khem Raj

Hi Khem,

Quoted 18 lines · 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.

---
  meta/classes/dos2unix.bbclass | 14 ++++++++++++++
  1 file changed, 14 insertions(+)

create mode 100644 meta/classes/dos2unix.bbclass

meta/classes/dos2unix.bbclass new file +0 -0
new file mode 100644
index 0000000000..3fc17e2196

meta/classes/dos2unix.bbclass line 7

Quoted 7 lines
meta/classes/dos2unix.bbclass new file +7 -0
@@ -0,0 +1,14 @@
+# Class for use to convert all CRLF line terminators to LF
+# provided that some projects are being developed/maintained
+# on Windows so they have different line terminators(CRLF) vs
+# on Linux(LF), which can cause annoying patching errors during
+# git push/checkout processes.
+
+do_convert_crlf_to_lf[depends] += "dos2unix-native:do_populate_sysroot"

Shouldn't the dos2unix recipe live in oe-core also, when a class depends upon it?

// Martin

Quoted 8 lines
meta/classes/dos2unix.bbclass new file +7 -0
+
+# Convert CRLF line terminators to LF
+do_convert_crlf_to_lf () {
+	find ${S} -type f -exec dos2unix {} \;
+}
+
+addtask convert_crlf_to_lf after do_unpack before do_patch
Signature · 10 lines
Kind regards,
Martin Hundebøll
Embedded Linux Consultant

+45 61 65 54 61
[email protected]

Geanix IVS
https://geanix.com
DK39600706
#2 lore raw

Re: [PATCH 1/9] mesa: Enable gallium-llvm on x86 and x86_64

In reply to Khem Raj
Quoted 40 lines · Khem Raj
---
 meta/recipes-graphics/cairo/cairo.inc | 3 ++-
 meta/recipes-graphics/mesa/mesa.inc   | 3 +++
 2 files changed, 5 insertions(+), 1 deletion(-)
meta/recipes- renamed from meta/recipes-graphics/cairo/cairo.inc +0 -0

graphics/cairo/cairo.inc
index 20e0d2c92a..7347f223ff 100644

meta/recipes-graphics/cairo/cairo.inc +0 -0
@@ -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)} \

meta/recipes-graphics/cairo/cairo.inc +2 -1
-           ${@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- renamed from meta/recipes-graphics/mesa/mesa.inc +0 -0

graphics/mesa/mesa.inc
index 6aedeee9dc..2671d4de4d 100644

meta/recipes-graphics/mesa/mesa.inc +3 -0
@@ -47,6 +47,9 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATU
 RES', '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"
Quoted 1 line

PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm"

Adding this patch causes:

"oe-selftest -r sstatetests.SStateTests.test_sstate_32_64_same_hash"

to fail. I've not looked into it in more detail other than to narrow it down to this patch.

Cheers,

Richard

#9 lore raw

Re: [PATCH 4/9] dos2unix.bbclass: Move to oe-core

In reply to Martin Hundebøll
Quoted 25 lines · Martin Hundebøll

Hi Khem,

Quoted 22 lines · 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.

---
  meta/classes/dos2unix.bbclass | 14 ++++++++++++++
  1 file changed, 14 insertions(+)

create mode 100644 meta/classes/dos2unix.bbclass

meta/classes/dos2unix.bbclass new file +3 -0
new file mode 100644
index 0000000000..3fc17e2196
@@ -0,0 +1,14 @@
+# Class for use to convert all CRLF line terminators to LF
+# provided that some projects are being developed/maintained
+# on Windows so they have different line terminators(CRLF) vs
Quoted 8 lines
Quoted 5 lines
meta/classes/dos2unix.bbclass new file +4 -0
+# on Linux(LF), which can cause annoying patching errors during
+# git push/checkout processes.
+
+do_convert_crlf_to_lf[depends] += "dos2unix-

native:do_populate_sysroot"

Shouldn't the dos2unix recipe live in oe-core also, when a class depends upon it?

Not necessarily, we do have a number of core classes which aren't directly used in OE-Core but are needed by many layers and having a common copy makes sense.

I'd agree it is good to try and have something which tests them though.

Cheers,

Richard

#18 lore raw

Re: [PATCH 8/9] gdb: Upgrade to 8.1.1

In reply to Khem Raj
Quoted 11 lines · Khem Raj
Quoted 6 lines · ChenQi

There's a build failure on autobuilder.

https://autobuilder.yocto.io/builders/nightly-musl-x86-64/builds/70
0/steps/BuildImages/logs/stdio

I pushed a patch to pull branch which should fix it
http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/
master&id=a05cc1ee8eb1cb05064164a9ae62db6dc78d022b

I'm afraid not:

https://autobuilder.yocto.io/builders/nightly-musl/builds/1252/steps/Bu
ildImages/logs/stdio

https://autobuilder.yocto.io/builders/nightly-musl-x86-64/builds/701/st
eps/BuildImages/logs/stdio

Cheers,

Richard

author
#19 lore raw

Re: [PATCH 8/9] gdb: Upgrade to 8.1.1

Quoted 14 lines · Richard Purdie
Quoted 11 lines · Khem Raj
Quoted 6 lines · ChenQi

There's a build failure on autobuilder.

https://autobuilder.yocto.io/builders/nightly-musl-x86-64/builds/70
0/steps/BuildImages/logs/stdio

I pushed a patch to pull branch which should fix it
http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/
master&id=a05cc1ee8eb1cb05064164a9ae62db6dc78d022b

Quoted 8 lines

I'm afraid not:

https://autobuilder.yocto.io/builders/nightly-musl/builds/1252/steps/Bu
ildImages/logs/stdio

https://autobuilder.yocto.io/builders/nightly-musl-x86-64/builds/701/st
eps/BuildImages/logs/stdio

yeah C++, how can I ignore that. Refreshed the patch to use CPPFLAGS instead of CFLAGS, verified locally too. Give it a shot

http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/master&id=dc5dd1be33265c28e0f029b12888183d554444f3

Quoted 3 lines

Cheers,

Richard

author
#10 lore raw

Re: [PATCH 4/9] dos2unix.bbclass: Move to oe-core

In reply to Richard Purdie
Quoted 36 lines · Richard Purdie
Quoted 25 lines · Martin Hundebøll

Hi Khem,

Quoted 22 lines · 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.

---
  meta/classes/dos2unix.bbclass | 14 ++++++++++++++
  1 file changed, 14 insertions(+)

create mode 100644 meta/classes/dos2unix.bbclass

meta/classes/dos2unix.bbclass new file +3 -0
new file mode 100644
index 0000000000..3fc17e2196
@@ -0,0 +1,14 @@
+# Class for use to convert all CRLF line terminators to LF
+# provided that some projects are being developed/maintained
+# on Windows so they have different line terminators(CRLF) vs
Quoted 8 lines
Quoted 5 lines
meta/classes/dos2unix.bbclass new file +4 -0
+# on Linux(LF), which can cause annoying patching errors during
+# git push/checkout processes.
+
+do_convert_crlf_to_lf[depends] += "dos2unix-

native:do_populate_sysroot"

Shouldn't the dos2unix recipe live in oe-core also, when a class depends upon it?

Quoted 6 lines

Not necessarily, we do have a number of core classes which aren't directly used in OE-Core but are needed by many layers and having a common copy makes sense.

I'd agree it is good to try and have something which tests them though.

in this case, I think it would make sense to bring in recipe as well, since the motivation to bring this into core is to unlink dependency on meta-oe layer

Quoted 3 lines

Cheers,

Richard

author
#3 lore raw

Re: [PATCH 1/9] mesa: Enable gallium-llvm on x86 and x86_64

In reply to Richard Purdie
Quoted 46 lines · Richard Purdie
Quoted 40 lines · Khem Raj
---
 meta/recipes-graphics/cairo/cairo.inc | 3 ++-
 meta/recipes-graphics/mesa/mesa.inc   | 3 +++
 2 files changed, 5 insertions(+), 1 deletion(-)
meta/recipes- renamed from meta/recipes-graphics/cairo/cairo.inc +0 -0

graphics/cairo/cairo.inc
index 20e0d2c92a..7347f223ff 100644

meta/recipes-graphics/cairo/cairo.inc +0 -0
@@ -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)} \

meta/recipes-graphics/cairo/cairo.inc +2 -1
-           ${@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- renamed from meta/recipes-graphics/mesa/mesa.inc +0 -0

graphics/mesa/mesa.inc
index 6aedeee9dc..2671d4de4d 100644

meta/recipes-graphics/mesa/mesa.inc +3 -0
@@ -47,6 +47,9 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATU
 RES', '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"
Quoted 1 line

PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm"

Adding this patch causes:

Quoted 5 lines

"oe-selftest -r sstatetests.SStateTests.test_sstate_32_64_same_hash"

to fail. I've not looked into it in more detail other than to narrow it down to this patch.

my hunch is that its due to new env variables
probably we need to add them to exclude list...?
see
YOCTO_ALTERNATE_* vars

http://git.openembedded.org/openembedded-core/commit/?h=master-next&id=c5a27bd4d450911afa38846bc00ef762e4414eda

Quoted 4 lines

Cheers,

Richard

author
#11 lore raw

Re: [PATCH 4/9] dos2unix.bbclass: Move to oe-core

In reply to Khem Raj

I updated this in pull branch to include recipe as well.

Quoted 52 lines · Khem Raj
Quoted 36 lines · Richard Purdie
Quoted 25 lines · Martin Hundebøll

Hi Khem,

Quoted 22 lines · 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.

---
  meta/classes/dos2unix.bbclass | 14 ++++++++++++++
  1 file changed, 14 insertions(+)

create mode 100644 meta/classes/dos2unix.bbclass

meta/classes/dos2unix.bbclass new file +3 -0
new file mode 100644
index 0000000000..3fc17e2196
@@ -0,0 +1,14 @@
+# Class for use to convert all CRLF line terminators to LF
+# provided that some projects are being developed/maintained
+# on Windows so they have different line terminators(CRLF) vs
Quoted 8 lines
Quoted 5 lines
meta/classes/dos2unix.bbclass new file +4 -0
+# on Linux(LF), which can cause annoying patching errors during
+# git push/checkout processes.
+
+do_convert_crlf_to_lf[depends] += "dos2unix-

native:do_populate_sysroot"

Shouldn't the dos2unix recipe live in oe-core also, when a class depends upon it?

Quoted 6 lines

Not necessarily, we do have a number of core classes which aren't directly used in OE-Core but are needed by many layers and having a common copy makes sense.

I'd agree it is good to try and have something which tests them though.

in this case, I think it would make sense to bring in recipe as well, since the motivation to bring this into core is to unlink dependency on meta-oe layer

Quoted 3 lines

Cheers,

Richard

author
#4 lore raw

Re: [PATCH 1/9] mesa: Enable gallium-llvm on x86 and x86_64

In reply to Khem Raj
Quoted 55 lines · Khem Raj
Quoted 46 lines · Richard Purdie
Quoted 40 lines · Khem Raj
---
 meta/recipes-graphics/cairo/cairo.inc | 3 ++-
 meta/recipes-graphics/mesa/mesa.inc   | 3 +++
 2 files changed, 5 insertions(+), 1 deletion(-)
meta/recipes- renamed from meta/recipes-graphics/cairo/cairo.inc +0 -0

graphics/cairo/cairo.inc
index 20e0d2c92a..7347f223ff 100644

meta/recipes-graphics/cairo/cairo.inc +0 -0
@@ -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)} \

meta/recipes-graphics/cairo/cairo.inc +2 -1
-           ${@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- renamed from meta/recipes-graphics/mesa/mesa.inc +0 -0

graphics/mesa/mesa.inc
index 6aedeee9dc..2671d4de4d 100644

meta/recipes-graphics/mesa/mesa.inc +3 -0
@@ -47,6 +47,9 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATU
 RES', '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"
Quoted 1 line

PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm"

Adding this patch causes:

Quoted 5 lines

"oe-selftest -r sstatetests.SStateTests.test_sstate_32_64_same_hash"

to fail. I've not looked into it in more detail other than to narrow it down to this patch.

Quoted 7 lines

my hunch is that its due to new env variables
probably we need to add them to exclude list...?
see
YOCTO_ALTERNATE_* vars

http://git.openembedded.org/openembedded-core/commit/?h=master-next&id=c5a27bd4d450911afa38846bc00ef762e4414eda

I think I see the problem, its because of DLLVM_TARGETS_TO_BUILD being used for native llvm. I am testting this fix
http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/master&id=7cc195f4f8850ad314ef9b93535f874f05a6f9ed

Quoted 4 lines
Quoted 4 lines

Cheers,

Richard