[PATCH 2/6] make: use wc -c instead of stat -c%s to get file sizes

Sascha Hauer s.hauer at pengutronix.de
Tue Jun 5 15:43:27 EDT 2012


On Tue, Jun 05, 2012 at 04:49:21AM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote:
> HI,
> 
> 	I don't like this to continue to duplicate code
> 

What do you mean here?

Sascha

> Best Regards,
> J.
> On 22:40 Mon 04 Jun     , Dirk Hörner wrote:
> > On OS X, stat does not know about %s. Solaris does not have stat. The
> > drawback to this wc -c solution is that wc reads all the bytes, but we are
> > only dealing with small files here, so that not be much of a problem.
> > 
> > Signed-off-by: Dirk Hörner <dirker at gmail.com>
> > ---
> >  Makefile             |    2 +-
> >  common/Makefile      |    2 +-
> >  scripts/Makefile.lib |    2 +-
> >  3 files changed, 3 insertions(+), 3 deletions(-)
> > 
> > diff --git a/Makefile b/Makefile
> > index bcaae0a..3ac8788 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -536,7 +536,7 @@ quiet_cmd_barebox_version = GEN     .version
> >  # Check size of a file
> >  quiet_cmd_check_file_size = CHKSIZE $@
> >        cmd_check_file_size = set -e;					\
> > -	size=`stat -c%s $@`;						\
> > +	size=`wc -c < $@`;						\
> >  	max_size=`printf "%d" $2`;					\
> >  	if [ $$size -gt $$max_size ] ;					\
> >  	then								\
> > diff --git a/common/Makefile b/common/Makefile
> > index a58aef9..9c14d7b 100644
> > --- a/common/Makefile
> > +++ b/common/Makefile
> > @@ -77,7 +77,7 @@ barebox_default_env.lzo: barebox_default_env
> >  
> >  include/generated/barebox_default_env.h: barebox_default_env$(barebox_default_env_comp)
> >  	$(Q)cat $< | $(objtree)/scripts/bin2c default_environment > $@
> > -	$(Q)echo "const int default_environment_uncompress_size=`stat -c%s barebox_default_env`;" >> $@
> > +	$(Q)echo "const int default_environment_uncompress_size=`wc -c < barebox_default_env`;" >> $@
> >  
> >  CLEAN_FILES += include/generated/barebox_default_env.h barebox_default_env
> >  CLEAN_FILES += barebox_default_env.gz barebox_default_env.bz2
> > diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
> > index b842c48..9b02b1b 100644
> > --- a/scripts/Makefile.lib
> > +++ b/scripts/Makefile.lib
> > @@ -171,7 +171,7 @@ cmd_gzip = (cat $(filter-out FORCE,$^) | gzip -n -f -9 > $@) || \
> >  size_append = printf $(shell						\
> >  dec_size=0;								\
> >  for F in $1; do								\
> > -	fsize=$$(stat -c "%s" $$F);					\
> > +	fsize=$$(wc -c < $$F);					        \
> >  	dec_size=$$(expr $$dec_size + $$fsize);				\
> >  done;									\
> >  printf "%08x\n" $$dec_size |						\
> > -- 
> > 1.7.10.3
> > 
> > 
> > _______________________________________________
> > barebox mailing list
> > barebox at lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/barebox
> 
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
> 

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list