18 Jan, 2020

1 commit


03 Jan, 2020

1 commit

  • The build failure was originally reported on arm64-musl
    target at https://bugs.gentoo.org/703132. Here is the amd64-musl
    variant:

    ```
    $ LANG=C make CROSS_COMPILE=x86_64-gentoo-linux-musl- tools-only_defconfig -j$(nproc)
    $ LANG=C make CROSS_COMPILE=x86_64-gentoo-linux-musl- tools-all -j$(nproc)
    ...
    In file included from tools/env/../../env/flags.c:7,
    from tools/env/env_flags.c:1:
    include/env.h:159:1: error: unknown type name 'ulong'; did you mean 'long'?
    159 | ulong env_get_ulong(const char *name, int base, ulong default_val);
    | ^~~~~
    | long
    ```

    Note: 'ulong' is not defined there.

    On glibc 'ulong' comes from :

    ```c
    /* Old compatibility names for C types. */
    typedef unsigned long int ulong;
    ```

    On musl it comes from as well but from under different guards:

    ```c
    typedef unsigned long u_long, ulong;
    ```

    The change inlines 'ulong' define similar to 'uint' define.

    Bug: https://bugs.gentoo.org/703132
    Signed-off-by: Sergei Trofimovich

    Sergei Trofimovich
     

11 Sep, 2018

1 commit

  • You do not need to use the typedefs provided by compiler.

    Our compilers are either IPL32 or LP64. Hence, U-Boot can/should
    always use int-ll64.h typedefs like Linux kernel, whatever the
    typedefs the compiler internally uses.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

06 Feb, 2018

1 commit


03 Dec, 2016

1 commit

  • When building u-boot on sparc64 and powerpc hosts it became clear that
    u-boot expects endian conversion defines to be macros:

    lib/crc32.c:87: error: braced-group within expression allowed only inside a function

    For OpenBSD switch from using system definitions equivalent to the u-boot ones
    and define glibc __BYTE_ORDER __BIG_ENDIAN __LITTLE_ENDIAN names, as at least
    some parts of the non-cross build assumes those names are present (ie crc32.c).

    Signed-off-by: Jonathan Gray

    Jonathan Gray
     

07 Sep, 2016

1 commit


16 Dec, 2015

1 commit


15 Dec, 2015

1 commit

  • uintptr_t which is a typdef for unsigned long is needed for creating
    pointers (32 or 64 bit depending on Core) from 32 bit variables
    storing the address.
    If a 32 bit variable (u32) is typecasted to a pointer (void *),
    compiler gives a warning in case size of pointer on the core is 64 bit.

    The typdef has been moved from include/compiler.h to include/linux/types.h

    Signed-off-by: Aneesh Bansal
    Reviewed-by: York Sun

    Aneesh Bansal
     

27 Oct, 2014

1 commit

  • There's a definition in stdint.h (provided by gcc) which will be more correct
    if available.

    Define CONFIG_USE_STDINT to use this feature, or USE_STDINT=1 on the 'make'
    commmand.

    This adjusts the settings for x86 and sandbox, with both have 64-bit options.

    Signed-off-by: Gabe Black
    Reviewed-by: Gabe Black
    Tested-by: Gabe Black
    Reviewed-by: Bill Richardson
    Rewritten to be an option, since stdint.h is often available only in glibc.
    Changed to preserve a clear boundary between stdint and non-stdint
    Signed-off-by: Simon Glass

    Gabe Black
     

11 Oct, 2014

1 commit

  • Commit 832472 "tools: socfpga: Add socfpga preloader signing
    to mkimage" added tools/socfpga.c which relies on htole32,
    le32toh and friends. While compiler.h includes these protypes
    for linux from endian.h, it doesn't do so for FreeBSD. Hence
    include for FreeBSD.

    Cc: Marek Vasut
    CC: Tom Rini
    Signed-off-by: Jeroen Hofstee

    Jeroen Hofstee
     

25 Sep, 2014

1 commit


22 Jul, 2014

1 commit


22 Nov, 2011

1 commit


18 Oct, 2011

1 commit


29 Jul, 2011

1 commit


07 Oct, 2010

1 commit


20 Jun, 2010

1 commit

  • Commit 37566090 "compiler.h: unify system ifdef cruft here" added both
    a "#include " and a "extern int errno;" to include/compiler.h
    which is causing build warnings for some systems, for example for the
    "netstar" board:

    In file included from /home/wd/git/u-boot/work/lib/crc32.c:15:
    include/compiler.h:28: warning: function declaration isn't a prototype

    The declaration of "errno" should be redundant, as is
    supposed to provide a correct declaration, so drop it.

    Signed-off-by: Wolfgang Denk
    Cc: Mike Frysinger

    Wolfgang Denk
     

06 May, 2010

1 commit

  • Recent crc changes started using the "uint" type in headers that are used
    on the build system. This subsequently broke mingw targets as they do not
    provide such a type. So add this basic typedef to compiler.h so that we
    do not have to worry about this breaking again in the future.

    Signed-off-by: Mike Frysinger

    Mike Frysinger
     

18 Jan, 2010

1 commit


05 Sep, 2009

1 commit


20 Jul, 2009

1 commit

  • Shove a lot of the HOSTCC and related #ifdef checking crap into the new
    compiler.h header so that we can keep all other headers nice and clean.

    Also introduce custom uswap functions so we don't have to rely on the non
    standard implementations that a host may (or may not in the case of OS X)
    provide. This allows mkimage to finally build cleanly on an OS X system.

    Signed-off-by: Mike Frysinger

    Mike Frysinger