[U-Boot] [PATCH] bch: Fix build on FreeBSD host

Jonathan Gray jsg at jsg.id.au
Wed Jul 19 06:26:13 UTC 2017


On Tue, Jun 20, 2017 at 09:02:29AM +0200, Emmanuel Vadot wrote:
> endian.h on FreeBSD system exist in sys/ subdirectory.
> FreeBSD already have a fls function defined in strings.h which is included
> in string.h if __BSD_VISIBLE is defined, as a check for this.

This broke the build of u-boot on OpenBSD where there is no fls in
strings.h.

> 
> Signed-off-by: Emmanuel Vadot <manu at bidouilliste.com>
> ---
>  lib/bch.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/lib/bch.c b/lib/bch.c
> index ec53483774..7a2d9d3b86 100644
> --- a/lib/bch.c
> +++ b/lib/bch.c
> @@ -61,7 +61,11 @@
>  #include <linux/bitops.h>
>  #else
>  #include <errno.h>
> +#if defined(__FreeBSD__)
> +#include <sys/endian.h>
> +#else
>  #include <endian.h>
> +#endif
>  #include <stdint.h>
>  #include <stdlib.h>
>  #include <string.h>
> @@ -113,6 +117,7 @@ struct gf_poly_deg1 {
>  };
>  
>  #ifdef USE_HOSTCC
> +#ifndef __BSD_VISIBLE
>  static int fls(int x)
>  {
>  	int r = 32;
> @@ -142,6 +147,7 @@ static int fls(int x)
>  	return r;
>  }
>  #endif
> +#endif
>  
>  /*
>   * same as encode_bch(), but process input data one byte at a time
> -- 
> 2.13.1
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot


More information about the U-Boot mailing list