* [PATCH 1/3] classes/meson: use ninja explicitly when compiling
@ 2026-06-29 14:15 Ross Burton
2026-06-29 14:15 ` [PATCH 2/3] systemd-systemctl-native: update MESON_TARGET for direct ninja use Ross Burton
` (3 more replies)
0 siblings, 4 replies; 12+ messages in thread
From: Ross Burton @ 2026-06-29 14:15 UTC (permalink / raw)
To: openembedded-core
"meson compile" is essentially a glorified wrapper around calling ninja
that doesn't support all of the options that ninja does, so calling it
directly means builds are fractionally faster and we get direct control
over the flags that ninja is passed.
A longer rationale can be found in the Gentoo change by Eli Schwartz
that caused this patch, who is both a Gentoo and Meson developer:
https://github.com/gentoo/gentoo/commit/66011abd663671947fe07835f0d9cc360f5de317
The only change is that the compile target doesn't support the optional
convenience target type, but this is rarely used.
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
meta/classes-recipe/meson.bbclass | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/classes-recipe/meson.bbclass b/meta/classes-recipe/meson.bbclass
index 9bed293603c..a4643591103 100644
--- a/meta/classes-recipe/meson.bbclass
+++ b/meta/classes-recipe/meson.bbclass
@@ -180,7 +180,7 @@ meson_do_configure() {
do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"
meson_do_compile() {
- meson compile -v ${PARALLEL_MAKE} ${MESON_TARGET}
+ ninja --verbose ${PARALLEL_MAKE} ${MESON_TARGET}
}
meson_do_install() {
--
2.43.0
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/3] systemd-systemctl-native: update MESON_TARGET for direct ninja use
2026-06-29 14:15 [PATCH 1/3] classes/meson: use ninja explicitly when compiling Ross Burton
@ 2026-06-29 14:15 ` Ross Burton
2026-06-29 14:15 ` [PATCH 3/3] systemd-systemctl-native: remove systemd-sysv-install logic Ross Burton
` (2 subsequent siblings)
3 siblings, 0 replies; 12+ messages in thread
From: Ross Burton @ 2026-06-29 14:15 UTC (permalink / raw)
To: openembedded-core
We can't specify the target type now that the Meson class calls ninja
directly, so drop it. This doesn't change what is built.
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb b/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb
index 3d01d60e9c1..351f78d173c 100644
--- a/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb
+++ b/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb
@@ -8,7 +8,7 @@ DEPENDS = "gperf-native libcap-native util-linux-native python3-jinja2-native"
inherit pkgconfig meson native
-MESON_TARGET = "systemctl:executable"
+MESON_TARGET = "systemctl"
MESON_INSTALL_TAGS = "systemctl"
EXTRA_OEMESON += "-Dlink-systemctl-shared=false"
EXTRA_OEMESON += "-Dsysvinit-path= -Dsysvrcnd-path="
--
2.43.0
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/3] systemd-systemctl-native: remove systemd-sysv-install logic
2026-06-29 14:15 [PATCH 1/3] classes/meson: use ninja explicitly when compiling Ross Burton
2026-06-29 14:15 ` [PATCH 2/3] systemd-systemctl-native: update MESON_TARGET for direct ninja use Ross Burton
@ 2026-06-29 14:15 ` Ross Burton
2026-06-29 14:32 ` [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling Khem Raj
2026-06-30 8:13 ` Mathieu Dubois-Briand
3 siblings, 0 replies; 12+ messages in thread
From: Ross Burton @ 2026-06-29 14:15 UTC (permalink / raw)
To: openembedded-core
The use of systemd-sysv-install was removed before Wrynose[1], so we do
not need to install it in systemd-systemctl-native.
[1] oe-core d9ec9e20eeb ("systemd: Stop supporting sysvinit compatibility")
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
.../systemd/systemd-systemctl-native_259.5.bb | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb b/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb
index 351f78d173c..bf9c9f47763 100644
--- a/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb
+++ b/meta/recipes-core/systemd/systemd-systemctl-native_259.5.bb
@@ -17,12 +17,3 @@ EXTRA_OEMESON += "-Dsysvinit-path= -Dsysvrcnd-path="
# determined at run-time, but rather set during configure
# More details are here https://github.com/systemd/systemd/issues/35897#issuecomment-2665405887
EXTRA_OEMESON += "--sysconfdir ${sysconfdir_native}"
-
-do_install:append() {
- # Install systemd-sysv-install in /usr/bin rather than /usr/lib/systemd
- # (where it is normally installed) so systemctl can find it in $PATH.
- # It is expected that the use of systemd-sysv-install will be removed
- # with version 259 of systemd and then this, and everything that was
- # added along with it, should be reverted.
- install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${bindir}/systemd-sysv-install
-}
--
2.43.0
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-29 14:15 [PATCH 1/3] classes/meson: use ninja explicitly when compiling Ross Burton
2026-06-29 14:15 ` [PATCH 2/3] systemd-systemctl-native: update MESON_TARGET for direct ninja use Ross Burton
2026-06-29 14:15 ` [PATCH 3/3] systemd-systemctl-native: remove systemd-sysv-install logic Ross Burton
@ 2026-06-29 14:32 ` Khem Raj
2026-06-29 15:57 ` Ross Burton
2026-06-30 8:13 ` Mathieu Dubois-Briand
3 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2026-06-29 14:32 UTC (permalink / raw)
To: Ross Burton; +Cc: Patches and discussions about the oe-core layer
[-- Attachment #1: Type: text/plain, Size: 1974 bytes --]
On Mon, Jun 29, 2026, 7:16 AM Ross Burton via lists.openembedded.org
<ross.burton=arm.com@lists.openembedded.org> wrote:
> "meson compile" is essentially a glorified wrapper around calling ninja
> that doesn't support all of the options that ninja does, so calling it
> directly means builds are fractionally faster and we get direct control
> over the flags that ninja is passed.
>
> A longer rationale can be found in the Gentoo change by Eli Schwartz
> that caused this patch, who is both a Gentoo and Meson developer:
>
>
> https://github.com/gentoo/gentoo/commit/66011abd663671947fe07835f0d9cc360f5de317
>
> The only change is that the compile target doesn't support the optional
> convenience target type, but this is rarely used.
>
> Signed-off-by: Ross Burton <ross.burton@arm.com>
> ---
> meta/classes-recipe/meson.bbclass | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/classes-recipe/meson.bbclass
> b/meta/classes-recipe/meson.bbclass
> index 9bed293603c..a4643591103 100644
> --- a/meta/classes-recipe/meson.bbclass
> +++ b/meta/classes-recipe/meson.bbclass
> @@ -180,7 +180,7 @@ meson_do_configure() {
>
> do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"
> meson_do_compile() {
> - meson compile -v ${PARALLEL_MAKE} ${MESON_TARGET}
> + ninja --verbose ${PARALLEL_MAKE}
Like cmake verbose could be a configurable knob since its being added by
this patch
${MESON_TARGET}
> }
>
> meson_do_install() {
> --
> 2.43.0
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#239785):
> https://lists.openembedded.org/g/openembedded-core/message/239785
> Mute This Topic: https://lists.openembedded.org/mt/120030899/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
[-- Attachment #2: Type: text/html, Size: 3481 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-29 14:32 ` [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling Khem Raj
@ 2026-06-29 15:57 ` Ross Burton
2026-06-29 18:17 ` Khem Raj
0 siblings, 1 reply; 12+ messages in thread
From: Ross Burton @ 2026-06-29 15:57 UTC (permalink / raw)
To: Khem Raj; +Cc: Patches and discussions about the oe-core layer
On 29 Jun 2026, at 15:32, Khem Raj <raj.khem@gmail.com> wrote:
> Like cmake verbose could be a configurable knob since its being added by this patch
-v was already an option, but I’m a bit meh on adding options to make the logs useful.
Ross
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-29 15:57 ` Ross Burton
@ 2026-06-29 18:17 ` Khem Raj
0 siblings, 0 replies; 12+ messages in thread
From: Khem Raj @ 2026-06-29 18:17 UTC (permalink / raw)
To: Ross Burton; +Cc: Patches and discussions about the oe-core layer
[-- Attachment #1: Type: text/plain, Size: 437 bytes --]
Sometimes they can make non trivial difference in compile time of they are
large projects
On Mon, Jun 29, 2026, 8:58 AM Ross Burton <Ross.Burton@arm.com> wrote:
> On 29 Jun 2026, at 15:32, Khem Raj <raj.khem@gmail.com> wrote:
> > Like cmake verbose could be a configurable knob since its being added by
> this patch
>
> -v was already an option, but I’m a bit meh on adding options to make the
> logs useful.
>
> Ross
[-- Attachment #2: Type: text/html, Size: 820 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-29 14:15 [PATCH 1/3] classes/meson: use ninja explicitly when compiling Ross Burton
` (2 preceding siblings ...)
2026-06-29 14:32 ` [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling Khem Raj
@ 2026-06-30 8:13 ` Mathieu Dubois-Briand
2026-06-30 8:20 ` Daniel Turull
3 siblings, 1 reply; 12+ messages in thread
From: Mathieu Dubois-Briand @ 2026-06-30 8:13 UTC (permalink / raw)
To: ross.burton, openembedded-core; +Cc: daniel.turull
On Mon Jun 29, 2026 at 4:15 PM CEST, Ross Burton via lists.openembedded.org wrote:
> "meson compile" is essentially a glorified wrapper around calling ninja
> that doesn't support all of the options that ninja does, so calling it
> directly means builds are fractionally faster and we get direct control
> over the flags that ninja is passed.
>
> A longer rationale can be found in the Gentoo change by Eli Schwartz
> that caused this patch, who is both a Gentoo and Meson developer:
>
> https://github.com/gentoo/gentoo/commit/66011abd663671947fe07835f0d9cc360f5de317
>
> The only change is that the compile target doesn't support the optional
> convenience target type, but this is rarely used.
>
> Signed-off-by: Ross Burton <ross.burton@arm.com>
> ---
> meta/classes-recipe/meson.bbclass | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/classes-recipe/meson.bbclass b/meta/classes-recipe/meson.bbclass
> index 9bed293603c..a4643591103 100644
> --- a/meta/classes-recipe/meson.bbclass
> +++ b/meta/classes-recipe/meson.bbclass
> @@ -180,7 +180,7 @@ meson_do_configure() {
>
> do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"
> meson_do_compile() {
> - meson compile -v ${PARALLEL_MAKE} ${MESON_TARGET}
> + ninja --verbose ${PARALLEL_MAKE} ${MESON_TARGET}
> }
>
> meson_do_install() {
Hi Ross, Hi Daniel,
I just note this this patch is conflicting with the one from Daniel [1],
as it does use 'MESON_TARGET = "systemd-hwdb:executable"'. Depending on
which patch is merged first, the other might have to be rebased and
fixed.
[1]: https://lore.kernel.org/all/20260626073812.769193-4-daniel.turull@ericsson.com/
Thanks,
Mathieu
--
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-30 8:13 ` Mathieu Dubois-Briand
@ 2026-06-30 8:20 ` Daniel Turull
2026-06-30 9:16 ` Mathieu Dubois-Briand
2026-06-30 9:17 ` Ross Burton
0 siblings, 2 replies; 12+ messages in thread
From: Daniel Turull @ 2026-06-30 8:20 UTC (permalink / raw)
To: openembedded-core@lists.openembedded.org, ross.burton@arm.com,
mathieu.dubois-briand@bootlin.com
On Tue, 2026-06-30 at 10:13 +0200, Mathieu Dubois-Briand wrote:
> On Mon Jun 29, 2026 at 4:15 PM CEST, Ross Burton via
> lists.openembedded.org wrote:
> > "meson compile" is essentially a glorified wrapper around calling
> > ninja
> > that doesn't support all of the options that ninja does, so calling
> > it
> > directly means builds are fractionally faster and we get direct
> > control
> > over the flags that ninja is passed.
> >
> > A longer rationale can be found in the Gentoo change by Eli
> > Schwartz
> > that caused this patch, who is both a Gentoo and Meson developer:
> >
> >
> > The only change is that the compile target doesn't support the
> > optional
> > convenience target type, but this is rarely used.
> >
> > Signed-off-by: Ross Burton <ross.burton@arm.com>
> > ---
> > meta/classes-recipe/meson.bbclass | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/meta/classes-recipe/meson.bbclass b/meta/classes-
> > recipe/meson.bbclass
> > index 9bed293603c..a4643591103 100644
> > --- a/meta/classes-recipe/meson.bbclass
> > +++ b/meta/classes-recipe/meson.bbclass
> > @@ -180,7 +180,7 @@ meson_do_configure() {
> >
> > do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"
> > meson_do_compile() {
> > - meson compile -v ${PARALLEL_MAKE} ${MESON_TARGET}
> > + ninja --verbose ${PARALLEL_MAKE} ${MESON_TARGET}
> > }
> >
> > meson_do_install() {
>
> Hi Ross, Hi Daniel,
>
> I just note this this patch is conflicting with the one from Daniel
> [1],
> as it does use 'MESON_TARGET = "systemd-hwdb:executable"'. Depending
> on
> which patch is merged first, the other might have to be rebased and
> fixed.
>
Do you know why is conflicting? the systemd patch doesn't touch
meson.bbclass
Is is a different format expected for MESON_TARGET content?
Daniel
> [1]:
>
> Thanks,
> Mathieu
>
> --
> Mathieu Dubois-Briand, Bootlin
> Embedded Linux and Kernel engineering
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-30 8:20 ` Daniel Turull
@ 2026-06-30 9:16 ` Mathieu Dubois-Briand
2026-06-30 9:17 ` Ross Burton
1 sibling, 0 replies; 12+ messages in thread
From: Mathieu Dubois-Briand @ 2026-06-30 9:16 UTC (permalink / raw)
To: Daniel Turull, openembedded-core@lists.openembedded.org,
ross.burton@arm.com
On Tue Jun 30, 2026 at 10:20 AM CEST, Daniel Turull wrote:
> On Tue, 2026-06-30 at 10:13 +0200, Mathieu Dubois-Briand wrote:
>> On Mon Jun 29, 2026 at 4:15 PM CEST, Ross Burton via
>> lists.openembedded.org wrote:
>> > "meson compile" is essentially a glorified wrapper around calling
>> > ninja
>> > that doesn't support all of the options that ninja does, so calling
>> > it
>> > directly means builds are fractionally faster and we get direct
>> > control
>> > over the flags that ninja is passed.
>> >
>> > A longer rationale can be found in the Gentoo change by Eli
>> > Schwartz
>> > that caused this patch, who is both a Gentoo and Meson developer:
>> >
>> >
>> > The only change is that the compile target doesn't support the
>> > optional
>> > convenience target type, but this is rarely used.
>> >
>> > Signed-off-by: Ross Burton <ross.burton@arm.com>
>> > ---
>> > meta/classes-recipe/meson.bbclass | 2 +-
>> > 1 file changed, 1 insertion(+), 1 deletion(-)
>> >
>> > diff --git a/meta/classes-recipe/meson.bbclass b/meta/classes-
>> > recipe/meson.bbclass
>> > index 9bed293603c..a4643591103 100644
>> > --- a/meta/classes-recipe/meson.bbclass
>> > +++ b/meta/classes-recipe/meson.bbclass
>> > @@ -180,7 +180,7 @@ meson_do_configure() {
>> >
>> > do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"
>> > meson_do_compile() {
>> > - meson compile -v ${PARALLEL_MAKE} ${MESON_TARGET}
>> > + ninja --verbose ${PARALLEL_MAKE} ${MESON_TARGET}
>> > }
>> >
>> > meson_do_install() {
>>
>> Hi Ross, Hi Daniel,
>>
>> I just note this this patch is conflicting with the one from Daniel
>> [1],
>> as it does use 'MESON_TARGET = "systemd-hwdb:executable"'. Depending
>> on
>> which patch is merged first, the other might have to be rebased and
>> fixed.
>>
>
> Do you know why is conflicting? the systemd patch doesn't touch
> meson.bbclass
>
> Is is a different format expected for MESON_TARGET content?
>
I do not have all the context, I bet Ross knows better. But you can have
a look at patch 2 in this series (systemd-systemctl-native: update
MESON_TARGET for direct ninja use) for part of the explanation.
--
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-30 8:20 ` Daniel Turull
2026-06-30 9:16 ` Mathieu Dubois-Briand
@ 2026-06-30 9:17 ` Ross Burton
2026-06-30 9:20 ` Daniel Turull
1 sibling, 1 reply; 12+ messages in thread
From: Ross Burton @ 2026-06-30 9:17 UTC (permalink / raw)
To: Daniel Turull
Cc: openembedded-core@lists.openembedded.org,
mathieu.dubois-briand@bootlin.com
On 30 Jun 2026, at 09:20, Daniel Turull <daniel.turull@ericsson.com> wrote:
> Do you know why is conflicting? the systemd patch doesn't touch
> meson.bbclass
>
> Is is a different format expected for MESON_TARGET content?
Yes, the :executable suffix is a meson-specific tag (for disambiguation) that isn’t needed when invoking ninja targets directly.
Ross
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-30 9:17 ` Ross Burton
@ 2026-06-30 9:20 ` Daniel Turull
2026-06-30 9:57 ` Daniel Turull
0 siblings, 1 reply; 12+ messages in thread
From: Daniel Turull @ 2026-06-30 9:20 UTC (permalink / raw)
To: Ross.Burton@arm.com
Cc: openembedded-core@lists.openembedded.org,
mathieu.dubois-briand@bootlin.com
On Tue, 2026-06-30 at 09:17 +0000, Ross Burton wrote:
> On 30 Jun 2026, at 09:20, Daniel Turull <daniel.turull@ericsson.com>
> wrote:
> > Do you know why is conflicting? the systemd patch doesn't touch
> > meson.bbclass
> >
> > Is is a different format expected for MESON_TARGET content?
>
> Yes, the :executable suffix is a meson-specific tag (for
> disambiguation) that isn’t needed when invoking ninja targets
> directly.
>
> Ross
Ok. I can rebase my patch on top of Ross with only of the change.
Then you can pick any of version that applies.
Daniel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling
2026-06-30 9:20 ` Daniel Turull
@ 2026-06-30 9:57 ` Daniel Turull
0 siblings, 0 replies; 12+ messages in thread
From: Daniel Turull @ 2026-06-30 9:57 UTC (permalink / raw)
To: Ross.Burton@arm.com
Cc: openembedded-core@lists.openembedded.org,
mathieu.dubois-briand@bootlin.com
On Tue, 2026-06-30 at 11:20 +0200, Daniel Turull wrote:
> On Tue, 2026-06-30 at 09:17 +0000, Ross Burton wrote:
> > On 30 Jun 2026, at 09:20, Daniel Turull
> > <daniel.turull@ericsson.com>
> > wrote:
> > > Do you know why is conflicting? the systemd patch doesn't touch
> > > meson.bbclass
> > >
> > > Is is a different format expected for MESON_TARGET content?
> >
> > Yes, the :executable suffix is a meson-specific tag (for
> > disambiguation) that isn’t needed when invoking ninja targets
> > directly.
> >
> > Ross
>
> Ok. I can rebase my patch on top of Ross with only of the change.
> Then you can pick any of version that applies.
>
> Daniel
I see that my patches are already in master-next. should I resend them?
Daniel
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2026-06-30 9:57 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-29 14:15 [PATCH 1/3] classes/meson: use ninja explicitly when compiling Ross Burton
2026-06-29 14:15 ` [PATCH 2/3] systemd-systemctl-native: update MESON_TARGET for direct ninja use Ross Burton
2026-06-29 14:15 ` [PATCH 3/3] systemd-systemctl-native: remove systemd-sysv-install logic Ross Burton
2026-06-29 14:32 ` [OE-core] [PATCH 1/3] classes/meson: use ninja explicitly when compiling Khem Raj
2026-06-29 15:57 ` Ross Burton
2026-06-29 18:17 ` Khem Raj
2026-06-30 8:13 ` Mathieu Dubois-Briand
2026-06-30 8:20 ` Daniel Turull
2026-06-30 9:16 ` Mathieu Dubois-Briand
2026-06-30 9:17 ` Ross Burton
2026-06-30 9:20 ` Daniel Turull
2026-06-30 9:57 ` Daniel Turull
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox