* [Buildroot] [PATCH 0/3] Add qoriq-rcw C reimplementation + libmcpp dep
@ 2026-07-01 12:19 Philippe Nunes via buildroot
2026-07-01 12:19 ` [Buildroot] [PATCH 1/3] package/mcpp: new package Philippe Nunes via buildroot
` (3 more replies)
0 siblings, 4 replies; 14+ messages in thread
From: Philippe Nunes via buildroot @ 2026-07-01 12:19 UTC (permalink / raw)
To: buildroot; +Cc: Philippe Nunes
This series adds a host-only C reimplementation of NXP's rcw.py for the
pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160), packaged as
a reusable library (libqoriq-rcw) and a CLI built on top (qoriq-rcw-c).
The library depends on mcpp (a portable C preprocessor that ships as a
reusable libmcpp) for in-process preprocessing of .rcw sources.
Motivation:
- The existing host-qoriq-rcw package wraps NXP's rcw.py reference,
which (a) is slow due to Python startup overhead on every invocation,
(b) requires host Python at build time, and (c) shells out to
gcc -E for preprocessing. The C implementation here uses libmcpp
in-process for hermetic preprocessing and runs ~10x faster on
typical .rcw inputs.
- Beyond the rcw.py reference, qoriq-rcw-c adds two recovery features:
--dump read live RCW from /dev/mem on a running board
--dump-flash recover PBL + PBI from the bootrom slot(s) in
NOR / SD / eMMC
Useful when bringing up a new board or debugging a bad flash.
- The existing host-qoriq-rcw package is untouched. Users who prefer
the rcw.py reference can keep using it; the new package is fully
independent.
Patch breakdown:
1/3 package/mcpp: new package
Matsui CPP, a portable C90/C99/C++98 preprocessor with a
reusable libmcpp. Built host-only with --enable-mcpplib so the
library + public header are available to other host packages.
2/3 package/libqoriq-rcw: new package
Library form of the C reimplementation. host-meson-package,
depends on host-mcpp. Sets -Dtests=false and -Dman=disabled:
the tests/ subdir links libcmocka (only validates library
internals, never executed by Buildroot), and the man-page
step requires pandoc. Both options were added upstream (v1.0.1
for 'tests', v1.0.2 for 'man') specifically to support
distro/Buildroot packaging.
3/3 package/qoriq-rcw-c: new package
CLI on top of libqoriq-rcw. host-meson-package, depends on
host-libqoriq-rcw (transitively pulling in host-mcpp). Also
sets -Dman=disabled; the option landed upstream in v1.0.1.
Naming note: the upstream project is just called "qoriq-rcw"; the "-c"
suffix on the Buildroot package name is purely a disambiguator from
the existing host-qoriq-rcw package (which is the rcw.py wrapper).
The installed binary itself is still named qoriq-rcw.
Tested:
- check-package clean on all files (0 warnings).
- End-to-end build of host-qoriq-rcw-c succeeds against the real
upstream tarballs (mcpp 2.7.2 from SourceForge, libqoriq-rcw 1.0.2
and qoriq-rcw 1.0.1 from GitHub).
- 'qoriq-rcw --help' runs from host/bin/, .rcwi data files install
cleanly under host/share/qoriq-rcw/.
- Fork CI test-pkg matrix (32 toolchains), all green:
https://gitlab.com/evAdopter/buildroot/-/pipelines/2641099395
Philippe Nunes (3):
package/mcpp: new package
package/libqoriq-rcw: new package
package/qoriq-rcw-c: new package
DEVELOPERS | 5 +++++
package/Config.in.host | 3 +++
package/libqoriq-rcw/Config.in.host | 14 +++++++++++++
package/libqoriq-rcw/libqoriq-rcw.hash | 5 +++++
package/libqoriq-rcw/libqoriq-rcw.mk | 27 ++++++++++++++++++++++++++
package/mcpp/Config.in.host | 9 +++++++++
package/mcpp/mcpp.hash | 5 +++++
package/mcpp/mcpp.mk | 18 +++++++++++++++++
package/qoriq-rcw-c/Config.in.host | 19 ++++++++++++++++++
package/qoriq-rcw-c/qoriq-rcw-c.hash | 5 +++++
package/qoriq-rcw-c/qoriq-rcw-c.mk | 25 ++++++++++++++++++++++++
11 files changed, 135 insertions(+)
create mode 100644 package/libqoriq-rcw/Config.in.host
create mode 100644 package/libqoriq-rcw/libqoriq-rcw.hash
create mode 100644 package/libqoriq-rcw/libqoriq-rcw.mk
create mode 100644 package/mcpp/Config.in.host
create mode 100644 package/mcpp/mcpp.hash
create mode 100644 package/mcpp/mcpp.mk
create mode 100644 package/qoriq-rcw-c/Config.in.host
create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.hash
create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.mk
--
2.50.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 14+ messages in thread* [Buildroot] [PATCH 1/3] package/mcpp: new package 2026-07-01 12:19 [Buildroot] [PATCH 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot @ 2026-07-01 12:19 ` Philippe Nunes via buildroot 2026-07-06 8:23 ` Vincent Jardin via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 2/3] package/libqoriq-rcw: " Philippe Nunes via buildroot ` (2 subsequent siblings) 3 siblings, 1 reply; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-01 12:19 UTC (permalink / raw) To: buildroot; +Cc: Philippe Nunes mcpp (Matsui CPP) is a portable C/C++ preprocessor, implemented as both a CLI and a reusable library (libmcpp). It is conformant to ISO/ANSI C90, C99 and C++98 standards and validated against the official preprocessor test suite. This Buildroot package builds a host-only flavour of mcpp with --enable-mcpplib, so that libmcpp.{a,so} and the public header mcpp_lib.h are available for other host packages to embed preprocessor functionality in-process (i.e. without forking a real cpp binary). The standalone mcpp(1) CLI is installed as well. Upstream: https://mcpp.sourceforge.net/ Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> --- DEVELOPERS | 3 +++ package/Config.in.host | 1 + package/mcpp/Config.in.host | 9 +++++++++ package/mcpp/mcpp.hash | 5 +++++ package/mcpp/mcpp.mk | 18 ++++++++++++++++++ 5 files changed, 36 insertions(+) create mode 100644 package/mcpp/Config.in.host create mode 100644 package/mcpp/mcpp.hash create mode 100644 package/mcpp/mcpp.mk diff --git a/DEVELOPERS b/DEVELOPERS index 5a09be9bff..03fe739986 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2725,6 +2725,9 @@ F: package/adsp-ldr/ N: Philipp Richter <richterphilipp.pops@gmail.com> F: package/libtorrent-rasterbar/ +N: Philippe Nunes <nunes.philippe@free.fr> +F: package/mcpp/ + N: Philippe Proulx <eeppeliteloop@gmail.com> F: package/babeltrace2/ F: package/lttng-babeltrace/ diff --git a/package/Config.in.host b/package/Config.in.host index df57cc0c17..50798d142b 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -65,6 +65,7 @@ menu "Host utilities" source "package/lpc3250loader/Config.in.host" source "package/lttng-babeltrace/Config.in.host" source "package/lzma-alone/Config.in.host" + source "package/mcpp/Config.in.host" source "package/mender-artifact/Config.in.host" source "package/meson-tools/Config.in.host" source "package/mfgtools/Config.in.host" diff --git a/package/mcpp/Config.in.host b/package/mcpp/Config.in.host new file mode 100644 index 0000000000..b5fb6e30c4 --- /dev/null +++ b/package/mcpp/Config.in.host @@ -0,0 +1,9 @@ +config BR2_PACKAGE_HOST_MCPP + bool "host mcpp" + help + A portable C/C++ preprocessor, implemented as both a library + (libmcpp) and a stand-alone command-line tool. Designed to be + embedded by other tools that need in-process C-preprocessor + expansion without forking gcc -E. + + http://mcpp.sourceforge.net/ diff --git a/package/mcpp/mcpp.hash b/package/mcpp/mcpp.hash new file mode 100644 index 0000000000..b61627fb04 --- /dev/null +++ b/package/mcpp/mcpp.hash @@ -0,0 +1,5 @@ +# Locally calculated +sha256 3b9b4421888519876c4fc68ade324a3bbd81ceeb7092ecdbbc2055099fcb8864 mcpp-2.7.2.tar.gz + +# Locally calculated +sha256 adcd59c07ccdb072c8e1d40adb5cac670fcf3f51ba3a7fb41d46362bfd883b1b LICENSE diff --git a/package/mcpp/mcpp.mk b/package/mcpp/mcpp.mk new file mode 100644 index 0000000000..18cf99bc66 --- /dev/null +++ b/package/mcpp/mcpp.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# mcpp +# +################################################################################ + +MCPP_VERSION = 2.7.2 +MCPP_SITE = https://downloads.sourceforge.net/project/mcpp/mcpp/V.$(MCPP_VERSION) + +MCPP_LICENSE = BSD-2-Clause +MCPP_LICENSE_FILES = LICENSE + +# --enable-mcpplib builds libmcpp.{a,so} alongside the mcpp CLI. The +# library is what most consumers embed (libqoriq-rcw, etc.); without +# this flag only the standalone CLI is built. +HOST_MCPP_CONF_OPTS = --enable-mcpplib + +$(eval $(host-autotools-package)) -- 2.50.1 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [Buildroot] [PATCH 1/3] package/mcpp: new package 2026-07-01 12:19 ` [Buildroot] [PATCH 1/3] package/mcpp: new package Philippe Nunes via buildroot @ 2026-07-06 8:23 ` Vincent Jardin via buildroot 2026-07-06 15:49 ` Philippe Nunes via buildroot 0 siblings, 1 reply; 14+ messages in thread From: Vincent Jardin via buildroot @ 2026-07-06 8:23 UTC (permalink / raw) To: Philippe Nunes; +Cc: buildroot Hi Philippe, Thanks, see below, > diff --git a/package/mcpp/Config.in.host b/package/mcpp/Config.in.host > new file mode 100644 > index 0000000000..b5fb6e30c4 > --- /dev/null > +++ b/package/mcpp/Config.in.host > @@ -0,0 +1,9 @@ > +config BR2_PACKAGE_HOST_MCPP > + bool "host mcpp" The same can be needed on the target. > +# --enable-mcpplib builds libmcpp.{a,so} alongside the mcpp CLI. The > +# library is what most consumers embed (libqoriq-rcw, etc.); without > +# this flag only the standalone CLI is built. > +HOST_MCPP_CONF_OPTS = --enable-mcpplib A shorter comment could be good enough: # builds libmcpp.{a,so} alongside the mcpp CLI Best regards, Vincent _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Buildroot] [PATCH 1/3] package/mcpp: new package 2026-07-06 8:23 ` Vincent Jardin via buildroot @ 2026-07-06 15:49 ` Philippe Nunes via buildroot 0 siblings, 0 replies; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-06 15:49 UTC (permalink / raw) To: Vincent Jardin; +Cc: buildroot Hi Vincent, On 7/6/26 10:23, Vincent Jardin wrote: > Hi Philippe, > > Thanks, see below, > >> diff --git a/package/mcpp/Config.in.host b/package/mcpp/Config.in.host >> new file mode 100644 >> index 0000000000..b5fb6e30c4 >> --- /dev/null >> +++ b/package/mcpp/Config.in.host >> @@ -0,0 +1,9 @@ >> +config BR2_PACKAGE_HOST_MCPP >> + bool "host mcpp" > The same can be needed on the target. Ack, adding BR2_PACKAGE_MCPP in v2. >> +# --enable-mcpplib builds libmcpp.{a,so} alongside the mcpp CLI. The >> +# library is what most consumers embed (libqoriq-rcw, etc.); without >> +# this flag only the standalone CLI is built. >> +HOST_MCPP_CONF_OPTS = --enable-mcpplib > A shorter comment could be good enough: > > # builds libmcpp.{a,so} alongside the mcpp CLI I agree. Fixed in v2. Thanks. Philippe _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 2/3] package/libqoriq-rcw: new package 2026-07-01 12:19 [Buildroot] [PATCH 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 1/3] package/mcpp: new package Philippe Nunes via buildroot @ 2026-07-01 12:19 ` Philippe Nunes via buildroot 2026-07-06 8:19 ` Vincent Jardin via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 3/3] package/qoriq-rcw-c: " Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 3 siblings, 1 reply; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-01 12:19 UTC (permalink / raw) To: buildroot; +Cc: Philippe Nunes libqoriq-rcw is a C17 reimplementation of NXP's rcw.py for the pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). It compiles and decompiles RCW (Reset Configuration Word) binaries used by the SoC bootrom, and exposes the same functionality as a reusable shared library + pkg-config + public header. Built as a host-only meson package with -Dtests=false -Dman=disabled. The upstream tests/ subdir links libcmocka (only validates library internals -- never executed by Buildroot), and the man-page step requires pandoc (heavy Haskell-runtime tool typically absent from packagers' minimal images). The 'tests' option landed upstream in v1.0.1, the 'man' feature option in v1.0.2; we pin to v1.0.2. Depends on host-mcpp for in-process C preprocessor support; the library uses libmcpp instead of shelling out to gcc -E so that the preprocessing of .rcw sources is hermetic and self-contained. Upstream: https://github.com/vjardin/libqoriq-rcw Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> --- DEVELOPERS | 1 + package/Config.in.host | 1 + package/libqoriq-rcw/Config.in.host | 14 +++++++++++++ package/libqoriq-rcw/libqoriq-rcw.hash | 5 +++++ package/libqoriq-rcw/libqoriq-rcw.mk | 27 ++++++++++++++++++++++++++ 5 files changed, 48 insertions(+) create mode 100644 package/libqoriq-rcw/Config.in.host create mode 100644 package/libqoriq-rcw/libqoriq-rcw.hash create mode 100644 package/libqoriq-rcw/libqoriq-rcw.mk diff --git a/DEVELOPERS b/DEVELOPERS index 03fe739986..830ea99cb7 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2726,6 +2726,7 @@ N: Philipp Richter <richterphilipp.pops@gmail.com> F: package/libtorrent-rasterbar/ N: Philippe Nunes <nunes.philippe@free.fr> +F: package/libqoriq-rcw/ F: package/mcpp/ N: Philippe Proulx <eeppeliteloop@gmail.com> diff --git a/package/Config.in.host b/package/Config.in.host index 50798d142b..e44506198d 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -61,6 +61,7 @@ menu "Host utilities" source "package/jq/Config.in.host" source "package/kmod/Config.in.host" source "package/libp11/Config.in.host" + source "package/libqoriq-rcw/Config.in.host" source "package/llvm-project/lld/Config.in.host" source "package/lpc3250loader/Config.in.host" source "package/lttng-babeltrace/Config.in.host" diff --git a/package/libqoriq-rcw/Config.in.host b/package/libqoriq-rcw/Config.in.host new file mode 100644 index 0000000000..42c09ec329 --- /dev/null +++ b/package/libqoriq-rcw/Config.in.host @@ -0,0 +1,14 @@ +config BR2_PACKAGE_HOST_LIBQORIQ_RCW + bool "host libqoriq-rcw" + select BR2_PACKAGE_HOST_MCPP + help + C17 reimplementation of NXP's rcw.py as a shared/static + library. Compiles QorIQ/Layerscape Reset Configuration Word + (RCW) sources into binary images for the pbiformat=2 SoC + family (LS1028, LS1088, LS2088, LX2160). Produces + byte-identical output to rcw.py for those SoCs. + + Used by the host-qoriq-rcw-c CLI for the actual compile, + --dump, --dump-flash, and decompile operations. + + https://github.com/vjardin/libqoriq-rcw diff --git a/package/libqoriq-rcw/libqoriq-rcw.hash b/package/libqoriq-rcw/libqoriq-rcw.hash new file mode 100644 index 0000000000..17a4b5cc10 --- /dev/null +++ b/package/libqoriq-rcw/libqoriq-rcw.hash @@ -0,0 +1,5 @@ +# Locally calculated +sha256 6393cc3139068fa362c5f3a9ec4ae915704e4e848278f4eaa3f7cad465ed9b6b libqoriq-rcw-1.0.2.tar.gz + +# Locally calculated +sha256 30a111209bd81aa8d8c110087bff83ba112f82eb4e42630e5cba46cf0daa21ac LICENSE diff --git a/package/libqoriq-rcw/libqoriq-rcw.mk b/package/libqoriq-rcw/libqoriq-rcw.mk new file mode 100644 index 0000000000..6cbec14969 --- /dev/null +++ b/package/libqoriq-rcw/libqoriq-rcw.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# libqoriq-rcw +# +################################################################################ + +LIBQORIQ_RCW_VERSION = 1.0.2 +LIBQORIQ_RCW_SITE = $(call github,vjardin,libqoriq-rcw,v$(LIBQORIQ_RCW_VERSION)) + +LIBQORIQ_RCW_LICENSE = BSD-3-Clause +LIBQORIQ_RCW_LICENSE_FILES = LICENSE + +LIBQORIQ_RCW_INSTALL_STAGING = YES + +HOST_LIBQORIQ_RCW_DEPENDENCIES = host-mcpp + +# Skip both the cmocka-based unit tests and the pandoc-rendered man +# page. The tests/ subdir links libcmocka and only validates the +# library implementation itself (CRC, bit-packing, parse/decompile +# round-trips); Buildroot never executes them. The man-page step +# requires pandoc, a heavy Haskell-runtime tool typically absent +# from packagers' minimal images, and host packages don't install +# man pages anyway. The 'tests' option landed upstream in v1.0.1, +# the 'man' feature option in v1.0.2. +HOST_LIBQORIQ_RCW_CONF_OPTS = -Dtests=false -Dman=disabled + +$(eval $(host-meson-package)) -- 2.50.1 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [Buildroot] [PATCH 2/3] package/libqoriq-rcw: new package 2026-07-01 12:19 ` [Buildroot] [PATCH 2/3] package/libqoriq-rcw: " Philippe Nunes via buildroot @ 2026-07-06 8:19 ` Vincent Jardin via buildroot 2026-07-06 15:56 ` Philippe Nunes via buildroot 0 siblings, 1 reply; 14+ messages in thread From: Vincent Jardin via buildroot @ 2026-07-06 8:19 UTC (permalink / raw) To: Philippe Nunes; +Cc: buildroot Hi Philippe, Thanks for leading this packaging into Buildroot. see below, Le 01/07/26 14:19, Philippe Nunes via buildroot a écrit : > libqoriq-rcw is a C17 reimplementation of NXP's rcw.py for the > pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). It compiles > and decompiles RCW (Reset Configuration Word) binaries used by the > SoC bootrom, and exposes the same functionality as a reusable shared > library + pkg-config + public header. > > Built as a host-only meson package with -Dtests=false -Dman=disabled. > The upstream tests/ subdir links libcmocka (only validates library > internals -- never executed by Buildroot), and the man-page step > requires pandoc (heavy Haskell-runtime tool typically absent from > packagers' minimal images). The 'tests' option landed upstream in > v1.0.1, the 'man' feature option in v1.0.2; we pin to v1.0.2. No need of providing version history on all the versions into the commit log. > Depends on host-mcpp for in-process C preprocessor support; the > library uses libmcpp instead of shelling out to gcc -E so that the > preprocessing of .rcw sources is hermetic and self-contained. > > + Used by the host-qoriq-rcw-c CLI for the actual compile, > + --dump, --dump-flash, and decompile operations. This help information is not for the library. See my other comment. > +# Skip both the cmocka-based unit tests and the pandoc-rendered man > +# page. The tests/ subdir links libcmocka and only validates the > +# library implementation itself (CRC, bit-packing, parse/decompile > +# round-trips); Buildroot never executes them. The man-page step > +# requires pandoc, a heavy Haskell-runtime tool typically absent > +# from packagers' minimal images, and host packages don't install > +# man pages anyway. The 'tests' option landed upstream in v1.0.1, > +# the 'man' feature option in v1.0.2. > +HOST_LIBQORIQ_RCW_CONF_OPTS = -Dtests=false -Dman=disabled Please, provide shorter coments. Best regards, Vincent _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Buildroot] [PATCH 2/3] package/libqoriq-rcw: new package 2026-07-06 8:19 ` Vincent Jardin via buildroot @ 2026-07-06 15:56 ` Philippe Nunes via buildroot 0 siblings, 0 replies; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-06 15:56 UTC (permalink / raw) To: Vincent Jardin; +Cc: buildroot Hi Vincent, On 7/6/26 10:19, Vincent Jardin wrote: > Hi Philippe, > > Thanks for leading this packaging into Buildroot. > > see below, > > Le 01/07/26 14:19, Philippe Nunes via buildroot a écrit : >> libqoriq-rcw is a C17 reimplementation of NXP's rcw.py for the >> pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). It compiles >> and decompiles RCW (Reset Configuration Word) binaries used by the >> SoC bootrom, and exposes the same functionality as a reusable shared >> library + pkg-config + public header. >> >> Built as a host-only meson package with -Dtests=false -Dman=disabled. >> The upstream tests/ subdir links libcmocka (only validates library >> internals -- never executed by Buildroot), and the man-page step >> requires pandoc (heavy Haskell-runtime tool typically absent from >> packagers' minimal images). The 'tests' option landed upstream in >> v1.0.1, the 'man' feature option in v1.0.2; we pin to v1.0.2. > No need of providing version history on all the versions into the commit log. Ack, dropped in v2. >> Depends on host-mcpp for in-process C preprocessor support; the >> library uses libmcpp instead of shelling out to gcc -E so that the >> preprocessing of .rcw sources is hermetic and self-contained. >> >> + Used by the host-qoriq-rcw-c CLI for the actual compile, >> + --dump, --dump-flash, and decompile operations. > This help information is not for the library. See my other comment. Removed in v2. >> +# Skip both the cmocka-based unit tests and the pandoc-rendered man >> +# page. The tests/ subdir links libcmocka and only validates the >> +# library implementation itself (CRC, bit-packing, parse/decompile >> +# round-trips); Buildroot never executes them. The man-page step >> +# requires pandoc, a heavy Haskell-runtime tool typically absent >> +# from packagers' minimal images, and host packages don't install >> +# man pages anyway. The 'tests' option landed upstream in v1.0.1, >> +# the 'man' feature option in v1.0.2. >> +HOST_LIBQORIQ_RCW_CONF_OPTS = -Dtests=false -Dman=disabled Trimmed to a single line in v2: # skip cmocka-based unit tests and pandoc-generated man page Also adding a target variant (BR2_PACKAGE_LIBQORIQ_RCW) to satisfy patch 3's target build, which needs libqoriq-rcw at runtime for the --dump / --dump-flash recovery modes. Thanks. Philippe _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH 3/3] package/qoriq-rcw-c: new package 2026-07-01 12:19 [Buildroot] [PATCH 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 1/3] package/mcpp: new package Philippe Nunes via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 2/3] package/libqoriq-rcw: " Philippe Nunes via buildroot @ 2026-07-01 12:19 ` Philippe Nunes via buildroot 2026-07-06 8:15 ` Vincent Jardin via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 3 siblings, 1 reply; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-01 12:19 UTC (permalink / raw) To: buildroot; +Cc: Philippe Nunes qoriq-rcw-c is a C reimplementation of NXP's rcw.py CLI for the pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). Built on top of libqoriq-rcw, it compiles a .rcw source file (preprocessed in-process via libmcpp) to the binary RCW + PBI image consumed by the SoC bootrom. Beyond the rcw.py reference, qoriq-rcw-c adds two recovery features: --dump read the live RCW from /dev/mem on a running board (post-PLL-lock RCWSR state; no PBI commands) --dump-flash recover the PBL preamble + PBI commands from the bootrom slot(s) in NOR / SD / eMMC Built as a host-only meson package with -Dman=disabled to skip the pandoc-based man page (host packages don't install man pages anyway, and pandoc is a heavy Haskell-runtime build dep). The 'man' feature option landed upstream in v1.0.1; we pin to v1.0.1. The "-c" suffix in the Buildroot package name distinguishes the independent C implementation from the existing host-qoriq-rcw package, which wraps NXP's rcw.py reference. The upstream project itself is just "qoriq-rcw"; the suffix is purely a Buildroot-side disambiguator (the installed binary is still named qoriq-rcw). Upstream: https://github.com/vjardin/qoriq-rcw Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> --- DEVELOPERS | 1 + package/Config.in.host | 1 + package/qoriq-rcw-c/Config.in.host | 19 +++++++++++++++++++ package/qoriq-rcw-c/qoriq-rcw-c.hash | 5 +++++ package/qoriq-rcw-c/qoriq-rcw-c.mk | 25 +++++++++++++++++++++++++ 5 files changed, 51 insertions(+) create mode 100644 package/qoriq-rcw-c/Config.in.host create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.hash create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.mk diff --git a/DEVELOPERS b/DEVELOPERS index 830ea99cb7..36edb3a767 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2728,6 +2728,7 @@ F: package/libtorrent-rasterbar/ N: Philippe Nunes <nunes.philippe@free.fr> F: package/libqoriq-rcw/ F: package/mcpp/ +F: package/qoriq-rcw-c/ N: Philippe Proulx <eeppeliteloop@gmail.com> F: package/babeltrace2/ diff --git a/package/Config.in.host b/package/Config.in.host index e44506198d..5192f4b18d 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -102,6 +102,7 @@ menu "Host utilities" source "package/python3/Config.in.host" source "package/qemu/Config.in.host" source "package/qoriq-rcw/Config.in.host" + source "package/qoriq-rcw-c/Config.in.host" source "package/qt6/Config.in.host" source "package/raspberrypi-usbboot/Config.in.host" source "package/rauc/Config.in.host" diff --git a/package/qoriq-rcw-c/Config.in.host b/package/qoriq-rcw-c/Config.in.host new file mode 100644 index 0000000000..f8ca8d0de6 --- /dev/null +++ b/package/qoriq-rcw-c/Config.in.host @@ -0,0 +1,19 @@ +config BR2_PACKAGE_HOST_QORIQ_RCW_C + bool "host qoriq-rcw-c (C implementation)" + select BR2_PACKAGE_HOST_LIBQORIQ_RCW + help + C CLI built on top of libqoriq-rcw -- a faster drop-in + replacement for NXP's rcw.py for the pbiformat=2 SoC family + (LS1028, LS1088, LS2088, LX2160). + + Adds two capabilities beyond rcw.py: + --dump read live RCW from /dev/mem on a running + board (post-PLL-lock RCWSR state, no PBI) + --dump-flash recover PBL + PBI from the bootrom slot(s) + in NOR / SD / eMMC + + Naming note: the existing host-qoriq-rcw package consumes + the upstream NXP rcw.py reference implementation; the "-c" + suffix here distinguishes the independent C implementation. + + https://github.com/vjardin/qoriq-rcw diff --git a/package/qoriq-rcw-c/qoriq-rcw-c.hash b/package/qoriq-rcw-c/qoriq-rcw-c.hash new file mode 100644 index 0000000000..911a2c2e63 --- /dev/null +++ b/package/qoriq-rcw-c/qoriq-rcw-c.hash @@ -0,0 +1,5 @@ +# Locally calculated +sha256 977d501752045533fa725fe93e6e21b8cbbdf118da8944a939e9932ee1160529 qoriq-rcw-1.0.1.tar.gz + +# Locally calculated +sha256 30a111209bd81aa8d8c110087bff83ba112f82eb4e42630e5cba46cf0daa21ac LICENSE diff --git a/package/qoriq-rcw-c/qoriq-rcw-c.mk b/package/qoriq-rcw-c/qoriq-rcw-c.mk new file mode 100644 index 0000000000..a8258b121e --- /dev/null +++ b/package/qoriq-rcw-c/qoriq-rcw-c.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# qoriq-rcw-c +# +################################################################################ + +# The upstream project is named "qoriq-rcw"; the "-c" suffix in the +# Buildroot package name distinguishes it from the existing +# host-qoriq-rcw package (which wraps NXP's rcw.py reference). +QORIQ_RCW_C_VERSION = 1.0.1 +QORIQ_RCW_C_SITE = $(call github,vjardin,qoriq-rcw,v$(QORIQ_RCW_C_VERSION)) +QORIQ_RCW_C_SOURCE = qoriq-rcw-$(QORIQ_RCW_C_VERSION).tar.gz + +QORIQ_RCW_C_LICENSE = BSD-3-Clause +QORIQ_RCW_C_LICENSE_FILES = LICENSE + +HOST_QORIQ_RCW_C_DEPENDENCIES = host-libqoriq-rcw + +# Skip the pandoc-rendered man page: pandoc is a heavy Haskell- +# runtime build-time tool typically absent from packagers' minimal +# images, and host packages don't install man pages anyway. The +# 'man' feature option landed upstream in v1.0.1. +HOST_QORIQ_RCW_C_CONF_OPTS = -Dman=disabled + +$(eval $(host-meson-package)) -- 2.50.1 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [Buildroot] [PATCH 3/3] package/qoriq-rcw-c: new package 2026-07-01 12:19 ` [Buildroot] [PATCH 3/3] package/qoriq-rcw-c: " Philippe Nunes via buildroot @ 2026-07-06 8:15 ` Vincent Jardin via buildroot 2026-07-06 16:04 ` Philippe Nunes via buildroot 0 siblings, 1 reply; 14+ messages in thread From: Vincent Jardin via buildroot @ 2026-07-06 8:15 UTC (permalink / raw) To: Philippe Nunes; +Cc: buildroot Hi Philippe, Thanks for leading a Buildroot package on this tool. See below some few comments, Le 01/07/26 14:19, Philippe Nunes via buildroot a écrit : > qoriq-rcw-c is a C reimplementation of NXP's rcw.py CLI for the > pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). Built on > top of libqoriq-rcw, it compiles a .rcw source file (preprocessed > in-process via libmcpp) to the binary RCW + PBI image consumed by > the SoC bootrom. > > Beyond the rcw.py reference, qoriq-rcw-c adds two recovery features: > > --dump read the live RCW from /dev/mem on a running board > (post-PLL-lock RCWSR state; no PBI commands) > --dump-flash recover the PBL preamble + PBI commands from the > bootrom slot(s) in NOR / SD / eMMC Right, but it means that the tool has to be compiled and run on the target, not the host only. > +++ b/package/qoriq-rcw-c/Config.in.host > @@ -0,0 +1,19 @@ > +config BR2_PACKAGE_HOST_QORIQ_RCW_C > + bool "host qoriq-rcw-c (C implementation)" > + select BR2_PACKAGE_HOST_LIBQORIQ_RCW > + help > + C CLI built on top of libqoriq-rcw -- a faster drop-in > + replacement for NXP's rcw.py for the pbiformat=2 SoC family > + (LS1028, LS1088, LS2088, LX2160). The main benefit (aka faster) to that it avoid pulling/compiling a full python framework for the host mode, so we get a quick build. > + > + Adds two capabilities beyond rcw.py: > + --dump read live RCW from /dev/mem on a running > + board (post-PLL-lock RCWSR state, no PBI) > + --dump-flash recover PBL + PBI from the bootrom slot(s) > + in NOR / SD / eMMC No, those options are not for the host. Moreover, the Config.in does not need to detail all the runtime options. > +# The upstream project is named "qoriq-rcw"; the "-c" suffix in the > +# Buildroot package name distinguishes it from the existing > +# host-qoriq-rcw package (which wraps NXP's rcw.py reference). No need to duplicaate many time the same information. > +QORIQ_RCW_C_VERSION = 1.0.1 > +QORIQ_RCW_C_SITE = $(call github,vjardin,qoriq-rcw,v$(QORIQ_RCW_C_VERSION)) > +QORIQ_RCW_C_SOURCE = qoriq-rcw-$(QORIQ_RCW_C_VERSION).tar.gz > + > +QORIQ_RCW_C_LICENSE = BSD-3-Clause > +QORIQ_RCW_C_LICENSE_FILES = LICENSE > + > +HOST_QORIQ_RCW_C_DEPENDENCIES = host-libqoriq-rcw > + > +# Skip the pandoc-rendered man page: pandoc is a heavy Haskell- > +# runtime build-time tool typically absent from packagers' minimal > +# images, and host packages don't install man pages anyway. The > +# 'man' feature option landed upstream in v1.0.1. > +HOST_QORIQ_RCW_C_CONF_OPTS = -Dman=disabled A short comment such as: > +# Skip the pandoc-rendered man page: pandoc requires a full Haskell would be better. Best regards, Vincent _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Buildroot] [PATCH 3/3] package/qoriq-rcw-c: new package 2026-07-06 8:15 ` Vincent Jardin via buildroot @ 2026-07-06 16:04 ` Philippe Nunes via buildroot 0 siblings, 0 replies; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-06 16:04 UTC (permalink / raw) To: Vincent Jardin; +Cc: buildroot Hi Vincent, On 7/6/26 10:15, Vincent Jardin wrote: > Hi Philippe, > > Thanks for leading a Buildroot package on this tool. > > See below some few comments, > > Le 01/07/26 14:19, Philippe Nunes via buildroot a écrit : >> qoriq-rcw-c is a C reimplementation of NXP's rcw.py CLI for the >> pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). Built on >> top of libqoriq-rcw, it compiles a .rcw source file (preprocessed >> in-process via libmcpp) to the binary RCW + PBI image consumed by >> the SoC bootrom. >> >> Beyond the rcw.py reference, qoriq-rcw-c adds two recovery features: >> >> --dump read the live RCW from /dev/mem on a running board >> (post-PLL-lock RCWSR state; no PBI commands) >> --dump-flash recover the PBL preamble + PBI commands from the >> bootrom slot(s) in NOR / SD / eMMC > Right, but it means that the tool has to be compiled and run on the target, > not the host only. Ack. v2 adds BR2_PACKAGE_QORIQ_RCW_C and BR2_PACKAGE_LIBQORIQ_RCW (the target CLI needs the target library at runtime). >> +++ b/package/qoriq-rcw-c/Config.in.host >> @@ -0,0 +1,19 @@ >> +config BR2_PACKAGE_HOST_QORIQ_RCW_C >> + bool "host qoriq-rcw-c (C implementation)" >> + select BR2_PACKAGE_HOST_LIBQORIQ_RCW >> + help >> + C CLI built on top of libqoriq-rcw -- a faster drop-in >> + replacement for NXP's rcw.py for the pbiformat=2 SoC family >> + (LS1028, LS1088, LS2088, LX2160). > The main benefit (aka faster) to that it avoid pulling/compiling > a full python framework for the host mode, so we get a quick build. > Reworded the help text in v2 to mention avoiding the host Python dependency explicitly. >> + >> + Adds two capabilities beyond rcw.py: >> + --dump read live RCW from /dev/mem on a running >> + board (post-PLL-lock RCWSR state, no PBI) >> + --dump-flash recover PBL + PBI from the bootrom slot(s) >> + in NOR / SD / eMMC > No, those options are not for the host. Moreover, the Config.in does > not need to detail all the runtime options. Dropped the --dump / --dump-flash enumeration from Config.in in v2. >> +# The upstream project is named "qoriq-rcw"; the "-c" suffix in the >> +# Buildroot package name distinguishes it from the existing >> +# host-qoriq-rcw package (which wraps NXP's rcw.py reference). > No need to duplicaate many time the same information. Removed in v2. The "-c" suffix rationale stays in the commit body only. >> +QORIQ_RCW_C_VERSION = 1.0.1 >> +QORIQ_RCW_C_SITE = $(call github,vjardin,qoriq-rcw,v$(QORIQ_RCW_C_VERSION)) >> +QORIQ_RCW_C_SOURCE = qoriq-rcw-$(QORIQ_RCW_C_VERSION).tar.gz >> + >> +QORIQ_RCW_C_LICENSE = BSD-3-Clause >> +QORIQ_RCW_C_LICENSE_FILES = LICENSE >> + >> +HOST_QORIQ_RCW_C_DEPENDENCIES = host-libqoriq-rcw >> + >> +# Skip the pandoc-rendered man page: pandoc is a heavy Haskell- >> +# runtime build-time tool typically absent from packagers' minimal >> +# images, and host packages don't install man pages anyway. The >> +# 'man' feature option landed upstream in v1.0.1. >> +HOST_QORIQ_RCW_C_CONF_OPTS = -Dman=disabled > A short comment such as: >> +# Skip the pandoc-rendered man page: pandoc requires a full Haskell Fixed in v2 using your wording. Thanks. Philippe _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH v2 0/3] Add qoriq-rcw C reimplementation + libmcpp dep 2026-07-01 12:19 [Buildroot] [PATCH 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot ` (2 preceding siblings ...) 2026-07-01 12:19 ` [Buildroot] [PATCH 3/3] package/qoriq-rcw-c: " Philippe Nunes via buildroot @ 2026-07-07 16:09 ` Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 1/3] package/mcpp: new package Philippe Nunes via buildroot ` (2 more replies) 3 siblings, 3 replies; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-07 16:09 UTC (permalink / raw) To: buildroot; +Cc: Philippe Nunes This series adds a C reimplementation of NXP's rcw.py for the pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160), packaged as a reusable library (libqoriq-rcw) and a CLI built on top (qoriq-rcw-c). Both host and target variants are built. The library depends on mcpp (a portable C preprocessor with a reusable libmcpp) for in-process preprocessing of .rcw sources. Patch breakdown: 1/3 package/mcpp: new package Matsui CPP + libmcpp. Autotools, host + target. Ships three Buildroot-side patches for GCC 14/15 compile compatibility (upstream is dead, last release 2008). 2/3 package/libqoriq-rcw: new package Library form of the C reimplementation. host-meson + meson, depends on mcpp. -Dtests=false -Dman=disabled skip the cmocka and pandoc build-time dependencies. 3/3 package/qoriq-rcw-c: new package CLI on top of libqoriq-rcw. host-meson + meson, depends on libqoriq-rcw. -Dman=disabled. Naming note: upstream project is "qoriq-rcw"; the Buildroot package name has a "-c" suffix to disambiguate from the existing host-qoriq-rcw package (which wraps NXP's rcw.py reference). The installed binary is qoriq-rcw. Both libqoriq-rcw and qoriq-rcw-c gate on BR2_TOOLCHAIN_GCC_AT_LEAST_8 because upstream declares c_std=c17 in meson.build. Tested: - check-package clean on all files (0 warnings). - Full nbxv3 (LX2160A, aarch64) image cross-build succeeds; the installed target binaries include qoriq-rcw under /usr/bin/. - Fork CI test-pkg matrix: https://gitlab.com/evAdopter/buildroot/-/pipelines/2659083836 Changes v1 -> v2 (addressing Vincent Jardin's on-list review): patch 1/3 (mcpp): * added target variant alongside host (Suggested-by: Vincent) * shortened the --enable-mcpplib inline comment * added three Buildroot-side patches to fix GCC 14/15 compile breakage in mcpp's 2008-era C code: 0001 expand: split chained assignment between differently- typed pointers (-Wincompatible-pointer-types is a hard error in GCC 14+) 0002 system: request POSIX.1-2008 so readlink() is declared (mcpp defaults to POSIX.1-1990 which pre-dates it) 0003 system: rename true/false labels reserved in modern C patch 2/3 (libqoriq-rcw): * added target variant to satisfy patch 3's target build * dropped version-history sentence from commit body * removed consumer-oriented text from Config.in help * shortened the CONF_OPTS inline comment * gated on BR2_TOOLCHAIN_GCC_AT_LEAST_8 (c17) * bumped upstream to v1.0.2 (adds the 'man' meson option) patch 3/3 (qoriq-rcw-c): * added target variant per Vincent's request (Suggested-by:) -- the --dump / --dump-flash recovery modes must run on the board itself * dropped the --dump / --dump-flash enumeration from Config.in * reworded the "faster than rcw.py" help text to name the concrete benefit (avoids pulling in host Python) * removed the duplicate "-c suffix" comment from .mk * shortened the pandoc-skip comment * gated on BR2_TOOLCHAIN_GCC_AT_LEAST_8 (transitive) * bumped upstream to v1.0.1 (adds the 'man' meson option) Philippe Nunes (3): package/mcpp: new package package/libqoriq-rcw: new package package/qoriq-rcw-c: new package DEVELOPERS | 5 ++ package/Config.in | 3 + package/Config.in.host | 3 + package/libqoriq-rcw/Config.in | 14 +++++ package/libqoriq-rcw/Config.in.host | 10 +++ package/libqoriq-rcw/libqoriq-rcw.hash | 4 ++ package/libqoriq-rcw/libqoriq-rcw.mk | 23 +++++++ ...ined-assignment-between-differently-.patch | 36 +++++++++++ ...POSIX.1-2008-so-readlink-is-declared.patch | 36 +++++++++++ ...ue-false-labels-they-are-reserved-in.patch | 63 +++++++++++++++++++ package/mcpp/Config.in | 7 +++ package/mcpp/Config.in.host | 7 +++ package/mcpp/mcpp.hash | 4 ++ package/mcpp/mcpp.mk | 19 ++++++ package/qoriq-rcw-c/Config.in | 13 ++++ package/qoriq-rcw-c/Config.in.host | 10 +++ package/qoriq-rcw-c/qoriq-rcw-c.hash | 4 ++ package/qoriq-rcw-c/qoriq-rcw-c.mk | 22 +++++++ 18 files changed, 283 insertions(+) create mode 100644 package/libqoriq-rcw/Config.in create mode 100644 package/libqoriq-rcw/Config.in.host create mode 100644 package/libqoriq-rcw/libqoriq-rcw.hash create mode 100644 package/libqoriq-rcw/libqoriq-rcw.mk create mode 100644 package/mcpp/0001-expand-split-chained-assignment-between-differently-.patch create mode 100644 package/mcpp/0002-system-request-POSIX.1-2008-so-readlink-is-declared.patch create mode 100644 package/mcpp/0003-system-rename-true-false-labels-they-are-reserved-in.patch create mode 100644 package/mcpp/Config.in create mode 100644 package/mcpp/Config.in.host create mode 100644 package/mcpp/mcpp.hash create mode 100644 package/mcpp/mcpp.mk create mode 100644 package/qoriq-rcw-c/Config.in create mode 100644 package/qoriq-rcw-c/Config.in.host create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.hash create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.mk -- 2.54.0 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH v2 1/3] package/mcpp: new package 2026-07-07 16:09 ` [Buildroot] [PATCH v2 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot @ 2026-07-07 16:09 ` Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 2/3] package/libqoriq-rcw: " Philippe Nunes via buildroot 2026-07-07 16:10 ` [Buildroot] [PATCH v2 3/3] package/qoriq-rcw-c: " Philippe Nunes via buildroot 2 siblings, 0 replies; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-07 16:09 UTC (permalink / raw) To: buildroot; +Cc: Philippe Nunes, Vincent Jardin mcpp (Matsui CPP) is a portable C/C++ preprocessor. Builds both host and target with --enable-mcpplib, so libmcpp.{a,so} and mcpp_lib.h are available to other packages in addition to the standalone mcpp(1) CLI. Upstream: https://mcpp.sourceforge.net/ Suggested-by: Vincent Jardin <vjardin@free.fr> Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> --- DEVELOPERS | 3 + package/Config.in | 1 + package/Config.in.host | 1 + ...ined-assignment-between-differently-.patch | 36 +++++++++++ ...POSIX.1-2008-so-readlink-is-declared.patch | 36 +++++++++++ ...ue-false-labels-they-are-reserved-in.patch | 63 +++++++++++++++++++ package/mcpp/Config.in | 7 +++ package/mcpp/Config.in.host | 7 +++ package/mcpp/mcpp.hash | 4 ++ package/mcpp/mcpp.mk | 19 ++++++ 10 files changed, 177 insertions(+) create mode 100644 package/mcpp/0001-expand-split-chained-assignment-between-differently-.patch create mode 100644 package/mcpp/0002-system-request-POSIX.1-2008-so-readlink-is-declared.patch create mode 100644 package/mcpp/0003-system-rename-true-false-labels-they-are-reserved-in.patch create mode 100644 package/mcpp/Config.in create mode 100644 package/mcpp/Config.in.host create mode 100644 package/mcpp/mcpp.hash create mode 100644 package/mcpp/mcpp.mk diff --git a/DEVELOPERS b/DEVELOPERS index 5a09be9bff..03fe739986 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2725,6 +2725,9 @@ F: package/adsp-ldr/ N: Philipp Richter <richterphilipp.pops@gmail.com> F: package/libtorrent-rasterbar/ +N: Philippe Nunes <nunes.philippe@free.fr> +F: package/mcpp/ + N: Philippe Proulx <eeppeliteloop@gmail.com> F: package/babeltrace2/ F: package/lttng-babeltrace/ diff --git a/package/Config.in b/package/Config.in index 27f61ca7bc..944f971db7 100644 --- a/package/Config.in +++ b/package/Config.in @@ -2328,6 +2328,7 @@ menu "Text and terminal handling" source "package/libunibreak/Config.in" source "package/libunistring/Config.in" source "package/linenoise/Config.in" + source "package/mcpp/Config.in" source "package/ncurses/Config.in" source "package/newt/Config.in" source "package/oniguruma/Config.in" diff --git a/package/Config.in.host b/package/Config.in.host index df57cc0c17..50798d142b 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -65,6 +65,7 @@ menu "Host utilities" source "package/lpc3250loader/Config.in.host" source "package/lttng-babeltrace/Config.in.host" source "package/lzma-alone/Config.in.host" + source "package/mcpp/Config.in.host" source "package/mender-artifact/Config.in.host" source "package/meson-tools/Config.in.host" source "package/mfgtools/Config.in.host" diff --git a/package/mcpp/0001-expand-split-chained-assignment-between-differently-.patch b/package/mcpp/0001-expand-split-chained-assignment-between-differently-.patch new file mode 100644 index 0000000000..ee9657ea7c --- /dev/null +++ b/package/mcpp/0001-expand-split-chained-assignment-between-differently-.patch @@ -0,0 +1,36 @@ +From: Philippe Nunes <nunes.philippe@free.fr> +Date: Mon, 7 Jul 2026 12:00:00 +0200 +Subject: [PATCH] expand: split chained assignment between differently-typed + pointers + +GCC 14 promotes -Wincompatible-pointer-types from warning to error by +default. The chained assignment `m_inf->args = m_inf->loc_args = NULL` +in src/expand.c has different pointer types on each side +(char * vs LOCATION *) so the assignment fails to build on GCC 14+ +toolchains. + +Split the chain into two independent assignments to avoid the +implicit cross-type conversion. + +Upstream: N/A, mcpp is abandoned upstream (last release 2008). + +Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> +--- + src/expand.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/expand.c b/src/expand.c +--- a/src/expand.c ++++ b/src/expand.c +@@ -710,7 +710,8 @@ expand_macro( + } else { + m_inf->locs.start_col = m_inf->locs.start_line = 0L; + } +- m_inf->args = m_inf->loc_args = NULL; /* Default args */ ++ m_inf->args = NULL; /* Default args */ ++ m_inf->loc_args = NULL; + for (num = 1, recurs = 0; num < m_num; num++) + if (mac_inf[ num].defp == defp) + recurs++; /* Recursively nested macro */ +-- +2.39.0 diff --git a/package/mcpp/0002-system-request-POSIX.1-2008-so-readlink-is-declared.patch b/package/mcpp/0002-system-request-POSIX.1-2008-so-readlink-is-declared.patch new file mode 100644 index 0000000000..10089f0dc8 --- /dev/null +++ b/package/mcpp/0002-system-request-POSIX.1-2008-so-readlink-is-declared.patch @@ -0,0 +1,36 @@ +From: Philippe Nunes <nunes.philippe@free.fr> +Date: Mon, 7 Jul 2026 12:00:00 +0200 +Subject: [PATCH] system: request POSIX.1-2008 so readlink() is declared + +configed.H defines _POSIX_C_SOURCE=1 (POSIX.1-1990), which pre-dates +readlink(2) (added in POSIX.1-2001). Modern glibc treats readlink() +as guarded by _POSIX_C_SOURCE >= 200112L; with only 1 requested, the +declaration is invisible, and GCC 15+ turns the resulting +implicit-declaration into a hard error. + +Bump the requested POSIX level to 200809L (POSIX.1-2008) at the top +of system.c, before any header inclusion. Doing it in this one +translation unit keeps the change tightly scoped to the file that +needs readlink(); other .c files continue to see mcpp's default. + +Upstream: N/A, mcpp is abandoned upstream (last release 2008). + +Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> +--- + src/system.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/system.c b/src/system.c +--- a/src/system.c ++++ b/src/system.c +@@ -37,6 +37,8 @@ + * 1. specify the constants in "configed.H" or "noconfig.H", + * 2. append the system-dependent routines in this file. + */ ++#undef _POSIX_C_SOURCE ++#define _POSIX_C_SOURCE 200809L + #if PREPROCESSED + #include "mcpp.H" + #else +-- +2.39.0 diff --git a/package/mcpp/0003-system-rename-true-false-labels-they-are-reserved-in.patch b/package/mcpp/0003-system-rename-true-false-labels-they-are-reserved-in.patch new file mode 100644 index 0000000000..267431a1cd --- /dev/null +++ b/package/mcpp/0003-system-rename-true-false-labels-they-are-reserved-in.patch @@ -0,0 +1,63 @@ +From: Philippe Nunes <nunes.philippe@free.fr> +Date: Mon, 7 Jul 2026 12:00:00 +0200 +Subject: [PATCH] system: rename true/false labels (reserved in modern C) + +open_file() uses `true:` and `false:` as C label names for goto +targets. Since C99, <stdbool.h> defines `true` and `false` as macros +expanding to 1 and 0; in C23 they are outright keywords. Either way, +using them as identifiers (labels here) is a syntax error on modern +GCC (>= 14 / 15). + +Rename the two labels to `open_success:` and `open_failure:` (with +the matching goto sites) so the code parses under both classic and +C23-oriented compilers. + +Upstream: N/A, mcpp is abandoned upstream (last release 2008). + +Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> +--- + src/system.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/system.c b/src/system.c +--- a/src/system.c ++++ b/src/system.c +@@ -3431,7 +3431,7 @@ search: + if (! fullname) /* Non-existent or directory */ + return FALSE; + if (standard && included( fullname)) /* Once included */ +- goto true; ++ goto open_success; + + if ((max_open != 0 && max_open <= include_nest) + /* Exceed the known limit of open files */ +@@ -3458,12 +3458,12 @@ search: + if ((fp = fopen( fullname, "r")) == NULL) { + file->fp = fopen( cur_fullname, "r"); + fseek( file->fp, file->pos, SEEK_SET); +- goto false; ++ goto open_failure; + } + if (max_open == 0) /* Remember the limit of the system */ + max_open = include_nest; + } else if (fp == NULL) /* No read permission */ +- goto false; ++ goto open_failure; + /* Truncate buffer of the includer to save memory */ + len = (int) (file->bptr - file->buffer); + if (len) { +@@ -3510,9 +3510,9 @@ search: + if (mkdep && ((mkdep & MD_SYSHEADER) || ! infile->sys_header)) + put_depend( fullname); /* Output dependency line */ + +-true: ++open_success: + return TRUE; +-false: ++open_failure: + free( fullname); + return FALSE; + } + +-- +2.39.0 diff --git a/package/mcpp/Config.in b/package/mcpp/Config.in new file mode 100644 index 0000000000..7ebcd039a1 --- /dev/null +++ b/package/mcpp/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_MCPP + bool "mcpp" + help + A portable C/C++ preprocessor with a reusable library + (libmcpp). + + http://mcpp.sourceforge.net/ diff --git a/package/mcpp/Config.in.host b/package/mcpp/Config.in.host new file mode 100644 index 0000000000..1d03dc3b57 --- /dev/null +++ b/package/mcpp/Config.in.host @@ -0,0 +1,7 @@ +config BR2_PACKAGE_HOST_MCPP + bool "host mcpp" + help + A portable C/C++ preprocessor with a reusable library + (libmcpp). + + http://mcpp.sourceforge.net/ diff --git a/package/mcpp/mcpp.hash b/package/mcpp/mcpp.hash new file mode 100644 index 0000000000..651fcf50b8 --- /dev/null +++ b/package/mcpp/mcpp.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 3b9b4421888519876c4fc68ade324a3bbd81ceeb7092ecdbbc2055099fcb8864 mcpp-2.7.2.tar.gz +# Locally calculated +sha256 adcd59c07ccdb072c8e1d40adb5cac670fcf3f51ba3a7fb41d46362bfd883b1b LICENSE diff --git a/package/mcpp/mcpp.mk b/package/mcpp/mcpp.mk new file mode 100644 index 0000000000..04ca6e15df --- /dev/null +++ b/package/mcpp/mcpp.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# mcpp +# +################################################################################ + +MCPP_VERSION = 2.7.2 +MCPP_SITE = https://downloads.sourceforge.net/project/mcpp/mcpp/V.$(MCPP_VERSION) +MCPP_LICENSE = BSD-2-Clause +MCPP_LICENSE_FILES = LICENSE + +MCPP_INSTALL_STAGING = YES + +# builds libmcpp.{a,so} alongside the mcpp CLI +MCPP_CONF_OPTS = --enable-mcpplib +HOST_MCPP_CONF_OPTS = --enable-mcpplib + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) -- 2.54.0 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH v2 2/3] package/libqoriq-rcw: new package 2026-07-07 16:09 ` [Buildroot] [PATCH v2 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 1/3] package/mcpp: new package Philippe Nunes via buildroot @ 2026-07-07 16:09 ` Philippe Nunes via buildroot 2026-07-07 16:10 ` [Buildroot] [PATCH v2 3/3] package/qoriq-rcw-c: " Philippe Nunes via buildroot 2 siblings, 0 replies; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-07 16:09 UTC (permalink / raw) To: buildroot; +Cc: Philippe Nunes libqoriq-rcw is a C17 reimplementation of NXP's rcw.py, packaged as a reusable shared library + pkg-config + public header. It compiles and decompiles RCW (Reset Configuration Word) binaries for the pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). Both host and target variants are built. The library uses libmcpp in-process instead of shelling out to gcc -E, so preprocessing is hermetic. Built with -Dtests=false (skip cmocka unit tests) and -Dman=disabled (skip pandoc-generated man page). Upstream: https://github.com/vjardin/libqoriq-rcw Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> --- DEVELOPERS | 1 + package/Config.in | 1 + package/Config.in.host | 1 + package/libqoriq-rcw/Config.in | 14 ++++++++++++++ package/libqoriq-rcw/Config.in.host | 10 ++++++++++ package/libqoriq-rcw/libqoriq-rcw.hash | 4 ++++ package/libqoriq-rcw/libqoriq-rcw.mk | 23 +++++++++++++++++++++++ 7 files changed, 54 insertions(+) create mode 100644 package/libqoriq-rcw/Config.in create mode 100644 package/libqoriq-rcw/Config.in.host create mode 100644 package/libqoriq-rcw/libqoriq-rcw.hash create mode 100644 package/libqoriq-rcw/libqoriq-rcw.mk diff --git a/DEVELOPERS b/DEVELOPERS index 03fe739986..830ea99cb7 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2726,6 +2726,7 @@ N: Philipp Richter <richterphilipp.pops@gmail.com> F: package/libtorrent-rasterbar/ N: Philippe Nunes <nunes.philippe@free.fr> +F: package/libqoriq-rcw/ F: package/mcpp/ N: Philippe Proulx <eeppeliteloop@gmail.com> diff --git a/package/Config.in b/package/Config.in index 944f971db7..38563a6520 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1854,6 +1854,7 @@ menu "Hardware handling" source "package/libpciaccess/Config.in" source "package/libpri/Config.in" source "package/libqmi/Config.in" + source "package/libqoriq-rcw/Config.in" source "package/libqrtr-glib/Config.in" source "package/libraw1394/Config.in" source "package/librtas/Config.in" diff --git a/package/Config.in.host b/package/Config.in.host index 50798d142b..e44506198d 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -61,6 +61,7 @@ menu "Host utilities" source "package/jq/Config.in.host" source "package/kmod/Config.in.host" source "package/libp11/Config.in.host" + source "package/libqoriq-rcw/Config.in.host" source "package/llvm-project/lld/Config.in.host" source "package/lpc3250loader/Config.in.host" source "package/lttng-babeltrace/Config.in.host" diff --git a/package/libqoriq-rcw/Config.in b/package/libqoriq-rcw/Config.in new file mode 100644 index 0000000000..687e001c2f --- /dev/null +++ b/package/libqoriq-rcw/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_LIBQORIQ_RCW + bool "libqoriq-rcw" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C17 + select BR2_PACKAGE_MCPP + help + C17 reimplementation of NXP's rcw.py as a shared/static + library. Compiles QorIQ/Layerscape Reset Configuration Word + sources into binary images for the pbiformat=2 SoC family + (LS1028, LS1088, LS2088, LX2160). + + https://github.com/vjardin/libqoriq-rcw + +comment "libqoriq-rcw needs a toolchain w/ gcc >= 8" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8 diff --git a/package/libqoriq-rcw/Config.in.host b/package/libqoriq-rcw/Config.in.host new file mode 100644 index 0000000000..4ce2560d56 --- /dev/null +++ b/package/libqoriq-rcw/Config.in.host @@ -0,0 +1,10 @@ +config BR2_PACKAGE_HOST_LIBQORIQ_RCW + bool "host libqoriq-rcw" + select BR2_PACKAGE_HOST_MCPP + help + C17 reimplementation of NXP's rcw.py as a shared/static + library. Compiles QorIQ/Layerscape Reset Configuration Word + sources into binary images for the pbiformat=2 SoC family + (LS1028, LS1088, LS2088, LX2160). + + https://github.com/vjardin/libqoriq-rcw diff --git a/package/libqoriq-rcw/libqoriq-rcw.hash b/package/libqoriq-rcw/libqoriq-rcw.hash new file mode 100644 index 0000000000..27612f9f7a --- /dev/null +++ b/package/libqoriq-rcw/libqoriq-rcw.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 6393cc3139068fa362c5f3a9ec4ae915704e4e848278f4eaa3f7cad465ed9b6b libqoriq-rcw-1.0.2.tar.gz +# Locally calculated +sha256 30a111209bd81aa8d8c110087bff83ba112f82eb4e42630e5cba46cf0daa21ac LICENSE diff --git a/package/libqoriq-rcw/libqoriq-rcw.mk b/package/libqoriq-rcw/libqoriq-rcw.mk new file mode 100644 index 0000000000..124a2ebb0a --- /dev/null +++ b/package/libqoriq-rcw/libqoriq-rcw.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# libqoriq-rcw +# +################################################################################ + +LIBQORIQ_RCW_VERSION = 1.0.2 +LIBQORIQ_RCW_SITE = $(call github,vjardin,libqoriq-rcw,v$(LIBQORIQ_RCW_VERSION)) + +LIBQORIQ_RCW_LICENSE = BSD-3-Clause +LIBQORIQ_RCW_LICENSE_FILES = LICENSE + +LIBQORIQ_RCW_INSTALL_STAGING = YES + +LIBQORIQ_RCW_DEPENDENCIES = mcpp +HOST_LIBQORIQ_RCW_DEPENDENCIES = host-mcpp + +# skip cmocka-based unit tests and pandoc-generated man page +LIBQORIQ_RCW_CONF_OPTS = -Dtests=false -Dman=disabled +HOST_LIBQORIQ_RCW_CONF_OPTS = -Dtests=false -Dman=disabled + +$(eval $(meson-package)) +$(eval $(host-meson-package)) -- 2.54.0 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] [PATCH v2 3/3] package/qoriq-rcw-c: new package 2026-07-07 16:09 ` [Buildroot] [PATCH v2 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 1/3] package/mcpp: new package Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 2/3] package/libqoriq-rcw: " Philippe Nunes via buildroot @ 2026-07-07 16:10 ` Philippe Nunes via buildroot 2 siblings, 0 replies; 14+ messages in thread From: Philippe Nunes via buildroot @ 2026-07-07 16:10 UTC (permalink / raw) To: buildroot; +Cc: Philippe Nunes, Vincent Jardin qoriq-rcw-c is a C reimplementation of NXP's rcw.py CLI for the pbiformat=2 QorIQ family (LS1028, LS1088, LS2088, LX2160). Both host and target variants are built: the target variant provides recovery modes (--dump / --dump-flash) that need to run on the board itself. The "-c" suffix distinguishes this from the existing host-qoriq-rcw package which wraps NXP's rcw.py reference; the installed binary is qoriq-rcw. Upstream: https://github.com/vjardin/qoriq-rcw Suggested-by: Vincent Jardin <vjardin@free.fr> Signed-off-by: Philippe Nunes <nunes.philippe@free.fr> --- DEVELOPERS | 1 + package/Config.in | 1 + package/Config.in.host | 1 + package/qoriq-rcw-c/Config.in | 13 +++++++++++++ package/qoriq-rcw-c/Config.in.host | 10 ++++++++++ package/qoriq-rcw-c/qoriq-rcw-c.hash | 4 ++++ package/qoriq-rcw-c/qoriq-rcw-c.mk | 22 ++++++++++++++++++++++ 7 files changed, 52 insertions(+) create mode 100644 package/qoriq-rcw-c/Config.in create mode 100644 package/qoriq-rcw-c/Config.in.host create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.hash create mode 100644 package/qoriq-rcw-c/qoriq-rcw-c.mk diff --git a/DEVELOPERS b/DEVELOPERS index 830ea99cb7..36edb3a767 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2728,6 +2728,7 @@ F: package/libtorrent-rasterbar/ N: Philippe Nunes <nunes.philippe@free.fr> F: package/libqoriq-rcw/ F: package/mcpp/ +F: package/qoriq-rcw-c/ N: Philippe Proulx <eeppeliteloop@gmail.com> F: package/babeltrace2/ diff --git a/package/Config.in b/package/Config.in index 38563a6520..fe515e46c7 100644 --- a/package/Config.in +++ b/package/Config.in @@ -444,6 +444,7 @@ menu "Firmware" source "package/qoriq-fm-ucode/Config.in" source "package/qoriq-mc-binary/Config.in" source "package/qoriq-mc-utils/Config.in" + source "package/qoriq-rcw-c/Config.in" source "package/qoriq-restool/Config.in" source "package/rcw-smarc-sal28/Config.in" source "package/rpi-firmware/Config.in" diff --git a/package/Config.in.host b/package/Config.in.host index e44506198d..5192f4b18d 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -102,6 +102,7 @@ menu "Host utilities" source "package/python3/Config.in.host" source "package/qemu/Config.in.host" source "package/qoriq-rcw/Config.in.host" + source "package/qoriq-rcw-c/Config.in.host" source "package/qt6/Config.in.host" source "package/raspberrypi-usbboot/Config.in.host" source "package/rauc/Config.in.host" diff --git a/package/qoriq-rcw-c/Config.in b/package/qoriq-rcw-c/Config.in new file mode 100644 index 0000000000..86f33f1598 --- /dev/null +++ b/package/qoriq-rcw-c/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_QORIQ_RCW_C + bool "qoriq-rcw-c (C implementation)" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # libqoriq-rcw uses C17 + select BR2_PACKAGE_LIBQORIQ_RCW + help + C CLI on top of libqoriq-rcw for the pbiformat=2 SoC family + (LS1028, LS1088, LS2088, LX2160). Compiles RCW sources into + binary images and provides recovery modes on live hardware. + + https://github.com/vjardin/qoriq-rcw + +comment "qoriq-rcw-c needs a toolchain w/ gcc >= 8" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8 diff --git a/package/qoriq-rcw-c/Config.in.host b/package/qoriq-rcw-c/Config.in.host new file mode 100644 index 0000000000..f531e0b797 --- /dev/null +++ b/package/qoriq-rcw-c/Config.in.host @@ -0,0 +1,10 @@ +config BR2_PACKAGE_HOST_QORIQ_RCW_C + bool "host qoriq-rcw-c (C implementation)" + select BR2_PACKAGE_HOST_LIBQORIQ_RCW + help + C CLI on top of libqoriq-rcw for the pbiformat=2 SoC family + (LS1028, LS1088, LS2088, LX2160). Avoids pulling in host + Python (the host-qoriq-rcw package wraps NXP's rcw.py Python + reference). + + https://github.com/vjardin/qoriq-rcw diff --git a/package/qoriq-rcw-c/qoriq-rcw-c.hash b/package/qoriq-rcw-c/qoriq-rcw-c.hash new file mode 100644 index 0000000000..95353df2dc --- /dev/null +++ b/package/qoriq-rcw-c/qoriq-rcw-c.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 977d501752045533fa725fe93e6e21b8cbbdf118da8944a939e9932ee1160529 qoriq-rcw-1.0.1.tar.gz +# Locally calculated +sha256 30a111209bd81aa8d8c110087bff83ba112f82eb4e42630e5cba46cf0daa21ac LICENSE diff --git a/package/qoriq-rcw-c/qoriq-rcw-c.mk b/package/qoriq-rcw-c/qoriq-rcw-c.mk new file mode 100644 index 0000000000..395bc37984 --- /dev/null +++ b/package/qoriq-rcw-c/qoriq-rcw-c.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# qoriq-rcw-c +# +################################################################################ + +QORIQ_RCW_C_VERSION = 1.0.1 +QORIQ_RCW_C_SITE = $(call github,vjardin,qoriq-rcw,v$(QORIQ_RCW_C_VERSION)) +QORIQ_RCW_C_SOURCE = qoriq-rcw-$(QORIQ_RCW_C_VERSION).tar.gz + +QORIQ_RCW_C_LICENSE = BSD-3-Clause +QORIQ_RCW_C_LICENSE_FILES = LICENSE + +QORIQ_RCW_C_DEPENDENCIES = libqoriq-rcw +HOST_QORIQ_RCW_C_DEPENDENCIES = host-libqoriq-rcw + +# skip the pandoc-rendered man page (pandoc requires a full Haskell runtime) +QORIQ_RCW_C_CONF_OPTS = -Dman=disabled +HOST_QORIQ_RCW_C_CONF_OPTS = -Dman=disabled + +$(eval $(meson-package)) +$(eval $(host-meson-package)) -- 2.54.0 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply related [flat|nested] 14+ messages in thread
end of thread, other threads:[~2026-07-07 16:10 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-07-01 12:19 [Buildroot] [PATCH 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 1/3] package/mcpp: new package Philippe Nunes via buildroot 2026-07-06 8:23 ` Vincent Jardin via buildroot 2026-07-06 15:49 ` Philippe Nunes via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 2/3] package/libqoriq-rcw: " Philippe Nunes via buildroot 2026-07-06 8:19 ` Vincent Jardin via buildroot 2026-07-06 15:56 ` Philippe Nunes via buildroot 2026-07-01 12:19 ` [Buildroot] [PATCH 3/3] package/qoriq-rcw-c: " Philippe Nunes via buildroot 2026-07-06 8:15 ` Vincent Jardin via buildroot 2026-07-06 16:04 ` Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 0/3] Add qoriq-rcw C reimplementation + libmcpp dep Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 1/3] package/mcpp: new package Philippe Nunes via buildroot 2026-07-07 16:09 ` [Buildroot] [PATCH v2 2/3] package/libqoriq-rcw: " Philippe Nunes via buildroot 2026-07-07 16:10 ` [Buildroot] [PATCH v2 3/3] package/qoriq-rcw-c: " Philippe Nunes via buildroot
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.