Re: [Buildroot] [PATCH v2 1/3] package/mcpp: new package

Julien Olivain via buildroot <[email protected]> Sun, 02 Aug 2026 09:30:03 +0200
Newsgroups net.busybox.buildroot
Message-ID <[email protected]>
Hi Philippe,

Thanks for the patch. I have a comment, see below.

On 07/07/2026 18:09, Philippe Nunes via buildroot wrote:
> 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 <[email protected]>
> Signed-off-by: Philippe Nunes <[email protected]>
> ---
>  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(+)
[...]
> 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
> +

On a host with gcc 16 (like Fedora 44), compiling host-mcpp fails.
Using the command "make host-mcpp" produces the errors:

eval.c: In function 'eval_eval':
eval.c:1284:22: error: expected ',' or ';' before 'LL_FORM'
eval.c: In function 'dump_val':
eval.c:1638:51: error: expected ',' or ';' before 'LL_FORM'

You could probably workaround that issue by adding here:

HOST_MCPP_CONF_ENV = CFLAGS="$(HOST_CFLAGS) -std=gnu99"

But I don't really like the idea of introducing this new mcpp
package which has apparently not been maintained for the past
two decades... It already needs 3 patches and has this build
failures.

Is there any other maintained alternatives?

Otherwise, you could eventually fork it and maintain it, to have a
person of contact (e.g. for security and other bugfixes) and to avoid
piling up patches in Buildroot?

> +# 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

Best regards,

Julien.
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot