From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Babic Date: Sun, 27 Mar 2016 11:40:00 +0200 Subject: [U-Boot] [PATCH] tools: env: bug: config structs must be defined in tools library In-Reply-To: <1458913939-26277-1-git-send-email-andreas.fenkart@digitalstrom.com> References: <1458913939-26277-1-git-send-email-andreas.fenkart@digitalstrom.com> Message-ID: <56F7AA70.2020401@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Andreas, On 25/03/2016 14:52, Andreas Fenkart wrote: > fw_senten/fw_printenv can be compiled as a tools library, > excluding the fw_env_main object. > > Reported-by: Stefano Babic > Signed-off-by: Andreas Fenkart > --- > tools/env/fw_env.c | 4 ++++ > tools/env/fw_env_main.c | 4 ---- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c > index ee17a69..2533dc4 100644 > --- a/tools/env/fw_env.c > +++ b/tools/env/fw_env.c > @@ -34,6 +34,10 @@ > > #include "fw_env.h" > > +struct common_args common_args; > +struct printenv_args printenv_args; > +struct setenv_args setenv_args; > + This solves linking, but this makes the functions not reentrant. What about to pass the parameters to the exported functions without any global structure ? > #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) > > #define WHITESPACE(c) ((c == '\t') || (c == ' ')) > diff --git a/tools/env/fw_env_main.c b/tools/env/fw_env_main.c > index 4bd4216..3065de9 100644 > --- a/tools/env/fw_env_main.c > +++ b/tools/env/fw_env_main.c > @@ -49,10 +49,6 @@ static struct option long_options[] = { > {NULL, 0, NULL, 0} > }; > > -struct common_args common_args; > -struct printenv_args printenv_args; > -struct setenv_args setenv_args; > - > void usage_printenv(void) > { > > Best regards, Stefano Babic -- ===================================================================== DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================