BAREBOX_MAGICVAR_NAME only exists to generate a unique identifier. We can generate that using __UNIQUE_ID. With this we can convert users from BAREBOX_MAGICVAR_NAME to the simpler BAREBOX_MAGICVAR macro. Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> --- include/magicvar.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/include/magicvar.h b/include/magicvar.h index 9fb89a84cc..bad9b0dee5 100644 --- a/include/magicvar.h +++ b/include/magicvar.h @@ -19,16 +19,18 @@ extern struct magicvar __barebox_magicvar_end; #endif #ifdef CONFIG_CMD_MAGICVAR -#define BAREBOX_MAGICVAR_NAMED(_name, _varname, _description) \ -extern const struct magicvar __barebox_magicvar_##_name; \ -const struct magicvar __barebox_magicvar_##_name \ +#define __BAREBOX_MAGICVAR_NAMED(_name, _varname, _description) \ +static const struct magicvar _name \ __attribute__ ((unused,section (".barebox_magicvar_" __stringify(_name)))) = { \ .name = #_varname, \ .description = MAGICVAR_DESCRIPTION(_description), \ }; +#define BAREBOX_MAGICVAR_NAMED(_name, _varname, _description) \ + __BAREBOX_MAGICVAR_NAMED(__barebox_magicvar_##_name, _varname, _description) + #define BAREBOX_MAGICVAR(_name, _description) \ - BAREBOX_MAGICVAR_NAMED(_name, _name, _description) + __BAREBOX_MAGICVAR_NAMED(__UNIQUE_ID(magicvar), _name, _description) #else #define BAREBOX_MAGICVAR_NAMED(_name, _varname, _description) #define BAREBOX_MAGICVAR(_name, _description) -- 2.28.0 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox