* [PATCH 02/10] conf/machine/include: add x86-64-v3 tunes (AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE)
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:01 ` [PATCH 03/10] qemux86-64: build for x86-64-v3 (2013 Haswell and later) rather than Core 2 from 2006 Alexander Kanavin
` (8 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
Qemu 7.2 finally allows us to move beyond building for original Core 2/Core i7 era hardware,
and this patch adds support for the newer generations. But first, a bit of
background:
Recently toolchains gained support for specifying x86-64 'levels' of
instruction set support; v3 corresponds to 2013-era Haswell CPUs
(and later), with AVX, AVX2 and a few other instructions that
were introduced in that generation. I believe this is preferrable
to picking a specific CPU model as the baseline.
Here's Phoronix's feature article that explains the feature and the available levels:
"Both LLVM Clang 12 and GCC 11 are ready to go in offering the new x86-64-v2, x86-64-v3, and x86-64-v4 targets.
These x86_64 micro-architecture feature levels have been about coming up with a few "classes" of Intel/AMD CPU processor support rather than continuing to rely on just the x86_64 baseline or targeting a
specific CPU family for optimizations. These new levels make it easier to raise the base requirements around Linux x86-64 whether it be for a Linux distribution or a particular software application where
the developer/ISV may be wanting to compile with greater instruction set extensions enabled in catering to more recent Intel/AMD CPUs."
https://www.phoronix.com/news/GCC-11-x86-64-Feature-Levels
Here's gcc docs for it:
https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html
And here's the formal specification (click on the pdf link):
https://gitlab.com/x86-psABIs/x86-64-ABI
The actual tune file was created by copying corei7 tunes and doing
search/replace on them. Qemu options were dropped as unnecessary.
32 bit tune was dropped as well, as there is no 32 bit only CPU
that also supports these new instructions; all of the v3 capable
chips are 64 bit.
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
.../machine/include/x86/tune-x86-64-v3.inc | 29 +++++++++++++++++++
1 file changed, 29 insertions(+)
create mode 100644 meta/conf/machine/include/x86/tune-x86-64-v3.inc
diff --git a/meta/conf/machine/include/x86/tune-x86-64-v3.inc b/meta/conf/machine/include/x86/tune-x86-64-v3.inc
new file mode 100644
index 0000000000..267c12ff50
--- /dev/null
+++ b/meta/conf/machine/include/x86/tune-x86-64-v3.inc
@@ -0,0 +1,29 @@
+# Settings for the GCC(1) cpu-type "x86-64-v3":
+#
+# CPUs with AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE.
+# (but not AVX512).
+# See https://www.phoronix.com/news/GCC-11-x86-64-Feature-Levels for details.
+#
+# This tune is recommended for Intel Haswell/AMD Excavator CPUs (and later).
+#
+DEFAULTTUNE ?= "x86-64-v3"
+
+# Include the previous tune to pull in PACKAGE_EXTRA_ARCHS
+require conf/machine/include/x86/tune-corei7.inc
+
+# Extra tune features
+TUNEVALID[x86-64-v3] = "Enable x86-64-v3 specific processor optimizations"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'x86-64-v3', ' -march=x86-64-v3', '', d)}"
+
+# Extra tune selections
+AVAILTUNES += "x86-64-v3"
+TUNE_FEATURES:tune-x86-64-v3 = "${TUNE_FEATURES:tune-x86-64} x86-64-v3"
+BASE_LIB:tune-x86-64-v3 = "lib64"
+TUNE_PKGARCH:tune-x86-64-v3 = "x86-64-v3"
+PACKAGE_EXTRA_ARCHS:tune-x86-64-v3 = "${PACKAGE_EXTRA_ARCHS:tune-corei7-64} x86-64-v3"
+
+AVAILTUNES += "x86-64-v3-x32"
+TUNE_FEATURES:tune-x86-64-v3-x32 = "${TUNE_FEATURES:tune-x86-64-x32} x86-64-v3"
+BASE_LIB:tune-x86-64-v3-x32 = "libx32"
+TUNE_PKGARCH:tune-x86-64-v3-x32 = "x86-64-v3-x32"
+PACKAGE_EXTRA_ARCHS:tune-x86-64-v3-x32 = "${PACKAGE_EXTRA_ARCHS:tune-corei7-64-x32} x86-64-v3-x32"
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 03/10] qemux86-64: build for x86-64-v3 (2013 Haswell and later) rather than Core 2 from 2006
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
2022-12-29 16:01 ` [PATCH 02/10] conf/machine/include: add x86-64-v3 tunes (AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE) Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:01 ` [PATCH 04/10] valgrind: disable tests that started failing after switching to x86-64-v3 target Alexander Kanavin
` (7 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
This allows us to
- test those more recent instruction sets (AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE)
- benefit from improved performance across the stack both in kvm-driven system emulation and when running
on real silicon.
For example, glibc:
https://www.phoronix.com/news/Glibc-strcasecmp-AVX2-EVEX
v4 level is adding AVX-512, which is far less established, particularly Intel has famously backtracked
from supporting it in Alder Lake/Raport Lake client CPUs and AMD has only implemented it in very recent Zen4 products:
https://www.phoronix.com/news/GCC-11-x86-64-Feature-Levels
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
meta/conf/machine/include/x86/qemuboot-x86.inc | 4 ++--
meta/conf/machine/qemux86-64.conf | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/meta/conf/machine/include/x86/qemuboot-x86.inc b/meta/conf/machine/include/x86/qemuboot-x86.inc
index 3953679366..31db1b2a61 100644
--- a/meta/conf/machine/include/x86/qemuboot-x86.inc
+++ b/meta/conf/machine/include/x86/qemuboot-x86.inc
@@ -4,8 +4,8 @@ QB_SMP = "-smp 4"
QB_CPU:x86 = "-cpu IvyBridge -machine q35,i8042=off"
QB_CPU_KVM:x86 = "-cpu IvyBridge -machine q35,i8042=off"
-QB_CPU:x86-64 = "-cpu IvyBridge -machine q35,i8042=off"
-QB_CPU_KVM:x86-64 = "-cpu IvyBridge -machine q35,i8042=off"
+QB_CPU:x86-64 = "-cpu Skylake-Client -machine q35,i8042=off"
+QB_CPU_KVM:x86-64 = "-cpu Skylake-Client -machine q35,i8042=off"
QB_AUDIO_DRV = "alsa"
QB_AUDIO_OPT = "-device AC97"
diff --git a/meta/conf/machine/qemux86-64.conf b/meta/conf/machine/qemux86-64.conf
index 8640867911..d355375f13 100644
--- a/meta/conf/machine/qemux86-64.conf
+++ b/meta/conf/machine/qemux86-64.conf
@@ -9,8 +9,8 @@ PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles3 ?= "mesa"
require conf/machine/include/qemu.inc
-DEFAULTTUNE ?= "core2-64"
-require conf/machine/include/x86/tune-corei7.inc
+DEFAULTTUNE ?= "x86-64-v3"
+require conf/machine/include/x86/tune-x86-64-v3.inc
require conf/machine/include/x86/qemuboot-x86.inc
UBOOT_MACHINE ?= "qemu-x86_64_defconfig"
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 04/10] valgrind: disable tests that started failing after switching to x86-64-v3 target
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
2022-12-29 16:01 ` [PATCH 02/10] conf/machine/include: add x86-64-v3 tunes (AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE) Alexander Kanavin
2022-12-29 16:01 ` [PATCH 03/10] qemux86-64: build for x86-64-v3 (2013 Haswell and later) rather than Core 2 from 2006 Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:01 ` [PATCH 05/10] go: update 1.19.3 -> 1.19.4 Alexander Kanavin
` (6 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
meta/recipes-devtools/valgrind/valgrind_3.20.0.bb | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/meta/recipes-devtools/valgrind/valgrind_3.20.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.20.0.bb
index cd9c4d9fe9..1e1f0ccdd3 100644
--- a/meta/recipes-devtools/valgrind/valgrind_3.20.0.bb
+++ b/meta/recipes-devtools/valgrind/valgrind_3.20.0.bb
@@ -242,6 +242,15 @@ do_install_ptest() {
install ${S}/none/tests/tls.c ${D}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/none/tests/
}
+do_install_ptest:append:x86-64 () {
+ # https://bugs.kde.org/show_bug.cgi?id=463456
+ rm ${D}${PTEST_PATH}/memcheck/tests/origin6-fp.vgtest
+ # https://bugs.kde.org/show_bug.cgi?id=463458
+ rm ${D}${PTEST_PATH}/memcheck/tests/vcpu_fnfns.vgtest
+ # https://bugs.kde.org/show_bug.cgi?id=463463
+ rm ${D}${PTEST_PATH}/none/tests/amd64/fma.vgtest
+}
+
# avoid stripping some generated binaries otherwise some of the tests will fail
# run-strip-reloc.sh, run-strip-strmerge.sh and so on will fail
INHIBIT_PACKAGE_STRIP_FILES += "\
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 05/10] go: update 1.19.3 -> 1.19.4
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
` (2 preceding siblings ...)
2022-12-29 16:01 ` [PATCH 04/10] valgrind: disable tests that started failing after switching to x86-64-v3 target Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:01 ` [PATCH 06/10] libportal: add from meta-openembedded/meta-gnome Alexander Kanavin
` (5 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
meta/recipes-devtools/go/{go-1.19.3.inc => go-1.19.4.inc} | 2 +-
...o-binary-native_1.19.3.bb => go-binary-native_1.19.4.bb} | 6 +++---
...cross-canadian_1.19.3.bb => go-cross-canadian_1.19.4.bb} | 0
.../go/{go-cross_1.19.3.bb => go-cross_1.19.4.bb} | 0
.../go/{go-crosssdk_1.19.3.bb => go-crosssdk_1.19.4.bb} | 0
.../go/{go-native_1.19.3.bb => go-native_1.19.4.bb} | 0
.../go/{go-runtime_1.19.3.bb => go-runtime_1.19.4.bb} | 0
meta/recipes-devtools/go/{go_1.19.3.bb => go_1.19.4.bb} | 0
8 files changed, 4 insertions(+), 4 deletions(-)
rename meta/recipes-devtools/go/{go-1.19.3.inc => go-1.19.4.inc} (89%)
rename meta/recipes-devtools/go/{go-binary-native_1.19.3.bb => go-binary-native_1.19.4.bb} (78%)
rename meta/recipes-devtools/go/{go-cross-canadian_1.19.3.bb => go-cross-canadian_1.19.4.bb} (100%)
rename meta/recipes-devtools/go/{go-cross_1.19.3.bb => go-cross_1.19.4.bb} (100%)
rename meta/recipes-devtools/go/{go-crosssdk_1.19.3.bb => go-crosssdk_1.19.4.bb} (100%)
rename meta/recipes-devtools/go/{go-native_1.19.3.bb => go-native_1.19.4.bb} (100%)
rename meta/recipes-devtools/go/{go-runtime_1.19.3.bb => go-runtime_1.19.4.bb} (100%)
rename meta/recipes-devtools/go/{go_1.19.3.bb => go_1.19.4.bb} (100%)
diff --git a/meta/recipes-devtools/go/go-1.19.3.inc b/meta/recipes-devtools/go/go-1.19.4.inc
similarity index 89%
rename from meta/recipes-devtools/go/go-1.19.3.inc
rename to meta/recipes-devtools/go/go-1.19.4.inc
index 1245faba93..49349ba6ec 100644
--- a/meta/recipes-devtools/go/go-1.19.3.inc
+++ b/meta/recipes-devtools/go/go-1.19.4.inc
@@ -15,4 +15,4 @@ SRC_URI += "\
file://0001-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch \
file://filter-build-paths.patch \
"
-SRC_URI[main.sha256sum] = "18ac263e39210bcf68d85f4370e97fb1734166995a1f63fb38b4f6e07d90d212"
+SRC_URI[main.sha256sum] = "eda74db4ac494800a3e66ee784e495bfbb9b8e535df924a8b01b1a8028b7f368"
diff --git a/meta/recipes-devtools/go/go-binary-native_1.19.3.bb b/meta/recipes-devtools/go/go-binary-native_1.19.4.bb
similarity index 78%
rename from meta/recipes-devtools/go/go-binary-native_1.19.3.bb
rename to meta/recipes-devtools/go/go-binary-native_1.19.4.bb
index 1eed2cde41..8dc8bdf8e2 100644
--- a/meta/recipes-devtools/go/go-binary-native_1.19.3.bb
+++ b/meta/recipes-devtools/go/go-binary-native_1.19.4.bb
@@ -9,9 +9,9 @@ PROVIDES = "go-native"
# Checksums available at https://go.dev/dl/
SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}"
-SRC_URI[go_linux_amd64.sha256sum] = "74b9640724fd4e6bb0ed2a1bc44ae813a03f1e72a4c76253e2d5c015494430ba"
-SRC_URI[go_linux_arm64.sha256sum] = "99de2fe112a52ab748fb175edea64b313a0c8d51d6157dba683a6be163fd5eab"
-SRC_URI[go_linux_ppc64le.sha256sum] = "741dad06e7b17fe2c9cd9586b4048cec087ca1f7a317389b14e89b26c25d3542"
+SRC_URI[go_linux_amd64.sha256sum] = "c9c08f783325c4cf840a94333159cc937f05f75d36a8b307951d5bd959cf2ab8"
+SRC_URI[go_linux_arm64.sha256sum] = "9df122d6baf6f2275270306b92af3b09d7973fb1259257e284dba33c0db14f1b"
+SRC_URI[go_linux_ppc64le.sha256sum] = "fbc6c7d1d169bbdc82223d861d2fadc6add01c126533d3efbba3fdca9b362035"
UPSTREAM_CHECK_URI = "https://golang.org/dl/"
UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux"
diff --git a/meta/recipes-devtools/go/go-cross-canadian_1.19.3.bb b/meta/recipes-devtools/go/go-cross-canadian_1.19.4.bb
similarity index 100%
rename from meta/recipes-devtools/go/go-cross-canadian_1.19.3.bb
rename to meta/recipes-devtools/go/go-cross-canadian_1.19.4.bb
diff --git a/meta/recipes-devtools/go/go-cross_1.19.3.bb b/meta/recipes-devtools/go/go-cross_1.19.4.bb
similarity index 100%
rename from meta/recipes-devtools/go/go-cross_1.19.3.bb
rename to meta/recipes-devtools/go/go-cross_1.19.4.bb
diff --git a/meta/recipes-devtools/go/go-crosssdk_1.19.3.bb b/meta/recipes-devtools/go/go-crosssdk_1.19.4.bb
similarity index 100%
rename from meta/recipes-devtools/go/go-crosssdk_1.19.3.bb
rename to meta/recipes-devtools/go/go-crosssdk_1.19.4.bb
diff --git a/meta/recipes-devtools/go/go-native_1.19.3.bb b/meta/recipes-devtools/go/go-native_1.19.4.bb
similarity index 100%
rename from meta/recipes-devtools/go/go-native_1.19.3.bb
rename to meta/recipes-devtools/go/go-native_1.19.4.bb
diff --git a/meta/recipes-devtools/go/go-runtime_1.19.3.bb b/meta/recipes-devtools/go/go-runtime_1.19.4.bb
similarity index 100%
rename from meta/recipes-devtools/go/go-runtime_1.19.3.bb
rename to meta/recipes-devtools/go/go-runtime_1.19.4.bb
diff --git a/meta/recipes-devtools/go/go_1.19.3.bb b/meta/recipes-devtools/go/go_1.19.4.bb
similarity index 100%
rename from meta/recipes-devtools/go/go_1.19.3.bb
rename to meta/recipes-devtools/go/go_1.19.4.bb
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 06/10] libportal: add from meta-openembedded/meta-gnome
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
` (3 preceding siblings ...)
2022-12-29 16:01 ` [PATCH 05/10] go: update 1.19.3 -> 1.19.4 Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:07 ` [OE-core] " Markus Volk
2022-12-29 16:01 ` [PATCH 07/10] libportal: convert from gtk-doc to gi-docgen Alexander Kanavin
` (4 subsequent siblings)
9 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
This used to be required by epiphany, then it became
optional and was moved to meta-oe, now it is again required.
The recipe was originally provided by... actually me :-)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
meta/conf/distro/include/maintainers.inc | 1 +
meta/recipes-gnome/libportal/libportal_0.6.bb | 19 +++++++++++++++++++
2 files changed, 20 insertions(+)
create mode 100644 meta/recipes-gnome/libportal/libportal_0.6.bb
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index be96123ce6..0affa1bded 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -371,6 +371,7 @@ RECIPE_MAINTAINER:pn-libpcre = "Yi Zhao <yi.zhao@windriver.com>"
RECIPE_MAINTAINER:pn-libpcre2 = "Unassigned <unassigned@yoctoproject.org>"
RECIPE_MAINTAINER:pn-libpipeline = "Wang Mingyu <wangmy@fujitsu.com>"
RECIPE_MAINTAINER:pn-libpng = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libportal = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-libproxy = "Anuj Mittal <anuj.mittal@intel.com>"
RECIPE_MAINTAINER:pn-libpthread-stubs = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-libptytty = "Alexander Kanavin <alex.kanavin@gmail.com>"
diff --git a/meta/recipes-gnome/libportal/libportal_0.6.bb b/meta/recipes-gnome/libportal/libportal_0.6.bb
new file mode 100644
index 0000000000..9784f04818
--- /dev/null
+++ b/meta/recipes-gnome/libportal/libportal_0.6.bb
@@ -0,0 +1,19 @@
+SUMMARY = "libportal provides GIO-style async APIs for most Flatpak portals."
+DESCRIPTION = "It provides simple asynchronous wrappers for most Flatpak portals \
+with a familiar GObject API along side the D-Bus API"
+HOMEPAGE = "https://github.com/flatpak/libportal"
+BUGTRACKER = "https://github.com/flatpak/libportal/issues"
+LICENSE = "LGPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404"
+
+SRC_URI = "git://github.com/flatpak/${BPN}.git;protocol=https;branch=main"
+SRCREV = "13df0b887a7eb7b0f9b14069561a41f62e813155"
+S = "${WORKDIR}/git"
+
+inherit meson gtk-doc gobject-introspection features_check
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
+DEPENDS += "glib-2.0 glib-2.0-native gtk+3"
+
+EXTRA_OEMESON = "-Dbackends=gtk3 -Dvapi=false"
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [OE-core] [PATCH 06/10] libportal: add from meta-openembedded/meta-gnome
2022-12-29 16:01 ` [PATCH 06/10] libportal: add from meta-openembedded/meta-gnome Alexander Kanavin
@ 2022-12-29 16:07 ` Markus Volk
2022-12-30 8:33 ` Alexander Kanavin
0 siblings, 1 reply; 16+ messages in thread
From: Markus Volk @ 2022-12-29 16:07 UTC (permalink / raw)
To: Alexander Kanavin; +Cc: openembedded-core, Alexander Kanavin
[-- Attachment #1: Type: text/plain, Size: 3190 bytes --]
I have recently sent a patch for libportal to includes libportal-gtk4.
It is under testing in meta-openembedded master-next.
Without gtk4 support 'nautilus' will fail to compile and i guess others
will follow.
Am Do, 29. Dez 2022 um 17:01:06 +0100 schrieb Alexander Kanavin
<alex.kanavin@gmail.com>:
> This used to be required by epiphany, then it became
> optional and was moved to meta-oe, now it is again required.
>
> The recipe was originally provided by... actually me :-)
>
> Signed-off-by: Alexander Kanavin <alex@linutronix.de
> <mailto:alex@linutronix.de>>
> ---
> meta/conf/distro/include/maintainers.inc | 1 +
> meta/recipes-gnome/libportal/libportal_0.6.bb | 19
> +++++++++++++++++++
> 2 files changed, 20 insertions(+)
> create mode 100644 meta/recipes-gnome/libportal/libportal_0.6.bb
>
> diff --git a/meta/conf/distro/include/maintainers.inc
> b/meta/conf/distro/include/maintainers.inc
> index be96123ce6..0affa1bded 100644
> --- a/meta/conf/distro/include/maintainers.inc
> +++ b/meta/conf/distro/include/maintainers.inc
> @@ -371,6 +371,7 @@ RECIPE_MAINTAINER:pn-libpcre = "Yi Zhao
> <yi.zhao@windriver.com>"
> RECIPE_MAINTAINER:pn-libpcre2 = "Unassigned
> <unassigned@yoctoproject.org <mailto:unassigned@yoctoproject.org>>"
> RECIPE_MAINTAINER:pn-libpipeline = "Wang Mingyu <wangmy@fujitsu.com
> <mailto:wangmy@fujitsu.com>>"
> RECIPE_MAINTAINER:pn-libpng = "Anuj Mittal <anuj.mittal@intel.com
> <mailto:anuj.mittal@intel.com>>"
> +RECIPE_MAINTAINER:pn-libportal = "Alexander Kanavin
> <alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>>"
> RECIPE_MAINTAINER:pn-libproxy = "Anuj Mittal <anuj.mittal@intel.com
> <mailto:anuj.mittal@intel.com>>"
> RECIPE_MAINTAINER:pn-libpthread-stubs = "Alexander Kanavin
> <alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>>"
> RECIPE_MAINTAINER:pn-libptytty = "Alexander Kanavin
> <alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>>"
> diff --git a/meta/recipes-gnome/libportal/libportal_0.6.bb
> b/meta/recipes-gnome/libportal/libportal_0.6.bb
> new file mode 100644
> index 0000000000..9784f04818
> --- /dev/null
> +++ b/meta/recipes-gnome/libportal/libportal_0.6.bb
> @@ -0,0 +1,19 @@
> +SUMMARY = "libportal provides GIO-style async APIs for most Flatpak
> portals."
> +DESCRIPTION = "It provides simple asynchronous wrappers for most
> Flatpak portals \
> +with a familiar GObject API along side the D-Bus API"
> +HOMEPAGE = "<https://github.com/flatpak/libportal>"
> +BUGTRACKER = "<https://github.com/flatpak/libportal/issues>"
> +LICENSE = "LGPL-3.0-only"
> +LIC_FILES_CHKSUM =
> "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404"
> <file://copying;md5=3000208d539ec061b899bce1d9ce9404/>
> +
> +SRC_URI =
> "git://github.com/flatpak/${BPN}.git;protocol=https;branch=main
> <git://github.com/flatpak/$%7BBPN%7D.git;protocol=https;branch=main>"
> +SRCREV = "13df0b887a7eb7b0f9b14069561a41f62e813155"
> +S = "${WORKDIR}/git"
> +
> +inherit meson gtk-doc gobject-introspection features_check
> +
> +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
> +
> +DEPENDS += "glib-2.0 glib-2.0-native gtk+3"
> +
> +EXTRA_OEMESON = "-Dbackends=gtk3 -Dvapi=false"
> --
> 2.30.2
[-- Attachment #2: Type: text/html, Size: 3604 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread* Re: [OE-core] [PATCH 06/10] libportal: add from meta-openembedded/meta-gnome
2022-12-29 16:07 ` [OE-core] " Markus Volk
@ 2022-12-30 8:33 ` Alexander Kanavin
0 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-30 8:33 UTC (permalink / raw)
To: Markus Volk; +Cc: openembedded-core, Alexander Kanavin
I'll send an updated version that includes that.
Alex
On Thu, 29 Dec 2022 at 17:07, Markus Volk <f_l_k@t-online.de> wrote:
>
> I have recently sent a patch for libportal to includes libportal-gtk4. It is under testing in meta-openembedded master-next.
>
> Without gtk4 support 'nautilus' will fail to compile and i guess others will follow.
>
>
> Am Do, 29. Dez 2022 um 17:01:06 +0100 schrieb Alexander Kanavin <alex.kanavin@gmail.com>:
>
> This used to be required by epiphany, then it became optional and was moved to meta-oe, now it is again required. The recipe was originally provided by... actually me :-) Signed-off-by: Alexander Kanavin <alex@linutronix.de> --- meta/conf/distro/include/maintainers.inc | 1 + meta/recipes-gnome/libportal/libportal_0.6.bb | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 meta/recipes-gnome/libportal/libportal_0.6.bb diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index be96123ce6..0affa1bded 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -371,6 +371,7 @@ RECIPE_MAINTAINER:pn-libpcre = "Yi Zhao <yi.zhao@windriver.com>" RECIPE_MAINTAINER:pn-libpcre2 = "Unassigned <unassigned@yoctoproject.org>" RECIPE_MAINTAINER:pn-libpipeline = "Wang Mingyu <wangmy@fujitsu.com>" RECIPE_MAINTAINER:pn-libpng = "Anuj Mittal <anuj.mittal@intel.com>" +RECIPE_MAINTAINER:pn-libportal = "Alexander Kanavin <alex.kanavin@gmail.com>" RECIPE_MAINTAINER:pn-libproxy = "Anuj Mittal <anuj.mittal@intel.com>" RECIPE_MAINTAINER:pn-libpthread-stubs = "Alexander Kanavin <alex.kanavin@gmail.com>" RECIPE_MAINTAINER:pn-libptytty = "Alexander Kanavin <alex.kanavin@gmail.com>" diff --git a/meta/recipes-gnome/libportal/libportal_0.6.bb b/meta/recipes-gnome/libportal/libportal_0.6.bb new file mode 100644 index 0000000000..9784f04818 --- /dev/null +++ b/meta/recipes-gnome/libportal/libportal_0.6.bb @@ -0,0 +1,19 @@ +SUMMARY = "libportal provides GIO-style async APIs for most Flatpak portals." +DESCRIPTION = "It provides simple asynchronous wrappers for most Flatpak portals \ +with a familiar GObject API along side the D-Bus API" +HOMEPAGE = "https://github.com/flatpak/libportal" +BUGTRACKER = "https://github.com/flatpak/libportal/issues" +LICENSE = "LGPL-3.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404" + +SRC_URI = "git://github.com/flatpak/${BPN}.git;protocol=https;branch=main" +SRCREV = "13df0b887a7eb7b0f9b14069561a41f62e813155" +S = "${WORKDIR}/git" + +inherit meson gtk-doc gobject-introspection features_check + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +DEPENDS += "glib-2.0 glib-2.0-native gtk+3" + +EXTRA_OEMESON = "-Dbackends=gtk3 -Dvapi=false"
> --
> 2.30.2
>
>
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 07/10] libportal: convert from gtk-doc to gi-docgen
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
` (4 preceding siblings ...)
2022-12-29 16:01 ` [PATCH 06/10] libportal: add from meta-openembedded/meta-gnome Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:01 ` [PATCH 08/10] epiphany: update 42.4 -> 43.0 Alexander Kanavin
` (3 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
meta/recipes-gnome/libportal/libportal_0.6.bb | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-gnome/libportal/libportal_0.6.bb b/meta/recipes-gnome/libportal/libportal_0.6.bb
index 9784f04818..7d4ab758a7 100644
--- a/meta/recipes-gnome/libportal/libportal_0.6.bb
+++ b/meta/recipes-gnome/libportal/libportal_0.6.bb
@@ -10,7 +10,8 @@ SRC_URI = "git://github.com/flatpak/${BPN}.git;protocol=https;branch=main"
SRCREV = "13df0b887a7eb7b0f9b14069561a41f62e813155"
S = "${WORKDIR}/git"
-inherit meson gtk-doc gobject-introspection features_check
+inherit meson gi-docgen gobject-introspection features_check pkgconfig
+GIDOCGEN_MESON_OPTION = 'docs'
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 08/10] epiphany: update 42.4 -> 43.0
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
` (5 preceding siblings ...)
2022-12-29 16:01 ` [PATCH 07/10] libportal: convert from gtk-doc to gi-docgen Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:34 ` [OE-core] " Markus Volk
2022-12-29 16:01 ` [PATCH 09/10] vulkan-samples: update to latest revision Alexander Kanavin
` (2 subsequent siblings)
9 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
soup 2.x support has been removed upstream.
libportal is no longer optional.
epiphany now also needs some native executables from
gtk and desktop-file-utils.
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
.../epiphany/{epiphany_42.4.bb => epiphany_43.0.bb} | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
rename meta/recipes-gnome/epiphany/{epiphany_42.4.bb => epiphany_43.0.bb} (78%)
diff --git a/meta/recipes-gnome/epiphany/epiphany_42.4.bb b/meta/recipes-gnome/epiphany/epiphany_43.0.bb
similarity index 78%
rename from meta/recipes-gnome/epiphany/epiphany_42.4.bb
rename to meta/recipes-gnome/epiphany/epiphany_43.0.bb
index 0cbe1c9c58..071be328f3 100644
--- a/meta/recipes-gnome/epiphany/epiphany_42.4.bb
+++ b/meta/recipes-gnome/epiphany/epiphany_43.0.bb
@@ -15,8 +15,12 @@ DEPENDS = " \
libarchive \
libdazzle \
libhandy \
+ libportal \
+ libsoup \
glib-2.0-native \
coreutils-native \
+ gtk+3-native \
+ desktop-file-utils-native \
"
GNOMEBASEBUILDCLASS = "meson"
@@ -28,16 +32,10 @@ SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@oe.utils.trim_version("${PV}", 1)}/${GN
file://migrator.patch \
file://distributor.patch \
"
-SRC_URI[archive.sha256sum] = "370938ad2920eeb28bc2435944776b7ba55a0e2ede65836f79818cfb7e8f0860"
-
-PACKAGECONFIG_SOUP ?= "soup3"
-PACKAGECONFIG ??= "${PACKAGECONFIG_SOUP}"
+SRC_URI[archive.sha256sum] = "b66d499f9ee72696d83cf844125377181a954554a4bb3785b73293380ac0c227"
# Developer mode enables debugging
PACKAGECONFIG[developer-mode] = "-Ddeveloper_mode=true,-Ddeveloper_mode=false"
-PACKAGECONFIG[soup2] = "-Dsoup2=enabled,-Dsoup2=disabled,libsoup-2.4,,,soup3"
-PACKAGECONFIG[soup3] = ",,libsoup,,,soup2"
-PACKAGECONFIG[libportal] = "-Dlibportal=enabled,-Dlibportal=disabled,libportal"
FILES:${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo"
RDEPENDS:${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas"
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [OE-core] [PATCH 08/10] epiphany: update 42.4 -> 43.0
2022-12-29 16:01 ` [PATCH 08/10] epiphany: update 42.4 -> 43.0 Alexander Kanavin
@ 2022-12-29 16:34 ` Markus Volk
2022-12-30 10:40 ` Alexander Kanavin
0 siblings, 1 reply; 16+ messages in thread
From: Markus Volk @ 2022-12-29 16:34 UTC (permalink / raw)
To: Alexander Kanavin; +Cc: openembedded-core, Alexander Kanavin
[-- Attachment #1: Type: text/plain, Size: 2478 bytes --]
By adding gtk-icon-cache to the inherit line gtk+3-native could be
removed from DEPENDS.
Am Do, 29. Dez 2022 um 17:01:08 +0100 schrieb Alexander Kanavin
<alex.kanavin@gmail.com>:
> soup 2.x support has been removed upstream.
> libportal is no longer optional.
> epiphany now also needs some native executables from
> gtk and desktop-file-utils.
>
> Signed-off-by: Alexander Kanavin <alex@linutronix.de
> <mailto:alex@linutronix.de>>
> ---
> .../epiphany/{epiphany_42.4.bb => epiphany_43.0.bb} | 12
> +++++-------
> 1 file changed, 5 insertions(+), 7 deletions(-)
> rename meta/recipes-gnome/epiphany/{epiphany_42.4.bb =>
> epiphany_43.0.bb} (78%)
>
> diff --git a/meta/recipes-gnome/epiphany/epiphany_42.4.bb
> b/meta/recipes-gnome/epiphany/epiphany_43.0.bb
> similarity index 78%
> rename from meta/recipes-gnome/epiphany/epiphany_42.4.bb
> rename to meta/recipes-gnome/epiphany/epiphany_43.0.bb
> index 0cbe1c9c58..071be328f3 100644
> --- a/meta/recipes-gnome/epiphany/epiphany_42.4.bb
> +++ b/meta/recipes-gnome/epiphany/epiphany_43.0.bb
> @@ -15,8 +15,12 @@ DEPENDS = " \
> libarchive \
> libdazzle \
> libhandy \
> + libportal \
> + libsoup \
> glib-2.0-native \
> coreutils-native \
> + gtk+3-native \
> + desktop-file-utils-native \
> "
>
> GNOMEBASEBUILDCLASS = "meson"
> @@ -28,16 +32,10 @@ SRC_URI =
> "${GNOME_MIRROR}/${GNOMEBN}/${@oe.utils.trim_version("${PV}", 1)}/${GN
> file://migrator.patch <file://migrator.patch/> \
> file://distributor.patch <file://distributor.patch/> \
> "
> -SRC_URI[archive.sha256sum] =
> "370938ad2920eeb28bc2435944776b7ba55a0e2ede65836f79818cfb7e8f0860"
> -
> -PACKAGECONFIG_SOUP ?= "soup3"
> -PACKAGECONFIG ??= "${PACKAGECONFIG_SOUP}"
> +SRC_URI[archive.sha256sum] =
> "b66d499f9ee72696d83cf844125377181a954554a4bb3785b73293380ac0c227"
>
> # Developer mode enables debugging
> PACKAGECONFIG[developer-mode] =
> "-Ddeveloper_mode=true,-Ddeveloper_mode=false"
> -PACKAGECONFIG[soup2] =
> "-Dsoup2=enabled,-Dsoup2=disabled,libsoup-2.4,,,soup3"
> -PACKAGECONFIG[soup3] = ",,libsoup,,,soup2"
> -PACKAGECONFIG[libportal] =
> "-Dlibportal=enabled,-Dlibportal=disabled,libportal"
>
> FILES:${PN} += "${datadir}/dbus-1
> ${datadir}/gnome-shell/search-providers ${datadir}/metainfo"
> RDEPENDS:${PN} = "iso-codes adwaita-icon-theme
> gsettings-desktop-schemas"
> --
> 2.30.2
[-- Attachment #2: Type: text/html, Size: 2632 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread* Re: [OE-core] [PATCH 08/10] epiphany: update 42.4 -> 43.0
2022-12-29 16:34 ` [OE-core] " Markus Volk
@ 2022-12-30 10:40 ` Alexander Kanavin
0 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-30 10:40 UTC (permalink / raw)
To: Markus Volk; +Cc: openembedded-core, Alexander Kanavin
That will be adjusted as well, thanks.
Alex
On Thu, 29 Dec 2022 at 17:34, Markus Volk <f_l_k@t-online.de> wrote:
>
> By adding gtk-icon-cache to the inherit line gtk+3-native could be removed from DEPENDS.
>
> Am Do, 29. Dez 2022 um 17:01:08 +0100 schrieb Alexander Kanavin <alex.kanavin@gmail.com>:
>
> soup 2.x support has been removed upstream. libportal is no longer optional. epiphany now also needs some native executables from gtk and desktop-file-utils. Signed-off-by: Alexander Kanavin <alex@linutronix.de> --- .../epiphany/{epiphany_42.4.bb => epiphany_43.0.bb} | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) rename meta/recipes-gnome/epiphany/{epiphany_42.4.bb => epiphany_43.0.bb} (78%) diff --git a/meta/recipes-gnome/epiphany/epiphany_42.4.bb b/meta/recipes-gnome/epiphany/epiphany_43.0.bb similarity index 78% rename from meta/recipes-gnome/epiphany/epiphany_42.4.bb rename to meta/recipes-gnome/epiphany/epiphany_43.0.bb index 0cbe1c9c58..071be328f3 100644 --- a/meta/recipes-gnome/epiphany/epiphany_42.4.bb +++ b/meta/recipes-gnome/epiphany/epiphany_43.0.bb @@ -15,8 +15,12 @@ DEPENDS = " \ libarchive \ libdazzle \ libhandy \ + libportal \ + libsoup \ glib-2.0-native \ coreutils-native \ + gtk+3-native \ + desktop-file-utils-native \ " GNOMEBASEBUILDCLASS = "meson" @@ -28,16 +32,10 @@ SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@oe.utils.trim_version("${PV}", 1)}/${GN file://migrator.patch \ file://distributor.patch \ " -SRC_URI[archive.sha256sum] = "370938ad2920eeb28bc2435944776b7ba55a0e2ede65836f79818cfb7e8f0860" - -PACKAGECONFIG_SOUP ?= "soup3" -PACKAGECONFIG ??= "${PACKAGECONFIG_SOUP}" +SRC_URI[archive.sha256sum] = "b66d499f9ee72696d83cf844125377181a954554a4bb3785b73293380ac0c227" # Developer mode enables debugging PACKAGECONFIG[developer-mode] = "-Ddeveloper_mode=true,-Ddeveloper_mode=false" -PACKAGECONFIG[soup2] = "-Dsoup2=enabled,-Dsoup2=disabled,libsoup-2.4,,,soup3" -PACKAGECONFIG[soup3] = ",,libsoup,,,soup2" -PACKAGECONFIG[libportal] = "-Dlibportal=enabled,-Dlibportal=disabled,libportal" FILES:${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo" RDEPENDS:${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas"
> --
> 2.30.2
>
>
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 09/10] vulkan-samples: update to latest revision
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
` (6 preceding siblings ...)
2022-12-29 16:01 ` [PATCH 08/10] epiphany: update 42.4 -> 43.0 Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 16:01 ` [PATCH 10/10] boost-build-native: update 1.80.0 -> 1.81.0 Alexander Kanavin
2022-12-29 17:18 ` [OE-core] [PATCH 01/10] devtool: process local files only for the main branch Richard Purdie
9 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
meta/recipes-graphics/vulkan/vulkan-samples_git.bb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/recipes-graphics/vulkan/vulkan-samples_git.bb b/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
index d0b3458e1b..de90a88502 100644
--- a/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
@@ -12,7 +12,7 @@ SRC_URI = "gitsm://github.com/KhronosGroup/Vulkan-Samples.git;branch=master;prot
"
UPSTREAM_CHECK_COMMITS = "1"
-SRCREV = "74d45aace02d99d766126711a8aaa0978276ca00"
+SRCREV = "8b945bebf8b2fd987dcf0eeca048068adf4ea44d"
UPSTREAM_CHECK_GITTAGREGEX = "These are not the releases you're looking for"
S = "${WORKDIR}/git"
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 10/10] boost-build-native: update 1.80.0 -> 1.81.0
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
` (7 preceding siblings ...)
2022-12-29 16:01 ` [PATCH 09/10] vulkan-samples: update to latest revision Alexander Kanavin
@ 2022-12-29 16:01 ` Alexander Kanavin
2022-12-29 17:18 ` [OE-core] [PATCH 01/10] devtool: process local files only for the main branch Richard Purdie
9 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2022-12-29 16:01 UTC (permalink / raw)
To: openembedded-core; +Cc: Alexander Kanavin
boost itself is already updated.
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
...oost-build-native_1.80.0.bb => boost-build-native_1.81.0.bb} | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
rename meta/recipes-support/boost/{boost-build-native_1.80.0.bb => boost-build-native_1.81.0.bb} (92%)
diff --git a/meta/recipes-support/boost/boost-build-native_1.80.0.bb b/meta/recipes-support/boost/boost-build-native_1.81.0.bb
similarity index 92%
rename from meta/recipes-support/boost/boost-build-native_1.80.0.bb
rename to meta/recipes-support/boost/boost-build-native_1.81.0.bb
index 54c0b2064f..d01c7658d5 100644
--- a/meta/recipes-support/boost/boost-build-native_1.80.0.bb
+++ b/meta/recipes-support/boost/boost-build-native_1.81.0.bb
@@ -7,7 +7,7 @@ LICENSE = "BSL-1.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
SRC_URI = "git://github.com/boostorg/build;protocol=https;branch=master"
-SRCREV = "405d34a04d29519625c5edfe1f3bac3bc3dc3534"
+SRCREV = "0271fafc1141c182d4aaa8db8b1c08a109d04c87"
PE = "1"
UPSTREAM_CHECK_GITTAGREGEX = "boost-(?P<pver>(\d+(\.\d+)+))"
--
2.30.2
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [OE-core] [PATCH 01/10] devtool: process local files only for the main branch
2022-12-29 16:01 [PATCH 01/10] devtool: process local files only for the main branch Alexander Kanavin
` (8 preceding siblings ...)
2022-12-29 16:01 ` [PATCH 10/10] boost-build-native: update 1.80.0 -> 1.81.0 Alexander Kanavin
@ 2022-12-29 17:18 ` Richard Purdie
2022-12-29 20:49 ` Alexander Kanavin
9 siblings, 1 reply; 16+ messages in thread
From: Richard Purdie @ 2022-12-29 17:18 UTC (permalink / raw)
To: Alexander Kanavin, openembedded-core; +Cc: Alexander Kanavin
On Thu, 2022-12-29 at 17:01 +0100, Alexander Kanavin wrote:
> devtool modify/upgrade are not currently equipped to handle conditional local files
> in SRC_URI, and provide only the main no-override set in a workspace under
> source/component/oe-local-files/ (this is done via meta/classes/devtool-source.bbclass).
>
> On the other hand, updating the changes from workspace into a recipe
> is run iteratively against all overrides; this works for patches (as they
> all are directed into their own override branches in the workspace
> git source tree), but breaks down when trying to match local files
> in a workspace against local files in overridden SRC_URI lists, resulting in
> bad recipe breakage.
>
> Implementing multiple sets of local files is significant work; let's for now
> simply not touch local files in recipes except when on the no-override variant.
>
> Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> ---
> scripts/lib/devtool/standard.py | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py
> index f46ce34ad1..f3349f98e9 100644
> --- a/scripts/lib/devtool/standard.py
> +++ b/scripts/lib/devtool/standard.py
> @@ -1409,6 +1409,18 @@ def _export_local_files(srctree, rd, destdir, srctreebase):
> updated = OrderedDict()
> added = OrderedDict()
> removed = OrderedDict()
> +
> + # Get current branch and return early with empty lists
> + # if on one of the override branches
> + # (local files are provided only for the main branch and processing
> + # them against lists from recipe overrides will result in mismatches
> + # and broken modifications to recipes).
> + stdout, _ = bb.process.run('git rev-parse --abbrev-ref HEAD',
> + cwd=srctree)
> + branchname = stdout.rstrip()
> + if branchname.startswith(override_branch_prefix):
> + return (updated, added, removed)
> +
> local_files_dir = os.path.join(srctreebase, 'oe-local-files')
> git_files = _git_ls_tree(srctree)
> if 'oe-local-files' in git_files:
Is there something we should be adding to the devtool tests to cover
this issue?
Cheers,
Richard
^ permalink raw reply [flat|nested] 16+ messages in thread