sandbox: errno: avoid conflict with libc's errno
authorMarek Behún <marek.behun@nic.cz>
Thu, 20 May 2021 11:24:05 +0000 (13:24 +0200)
committerTom Rini <trini@konsulko.com>
Mon, 24 May 2021 18:21:30 +0000 (14:21 -0400)
commitbe1e77f2868f288a219090ee81427a9b800bb158
treed407144c575dfcc0315e7d48980f7dcd5d6413d6
parentda48bd9ee5768e9811e4fbbab964c7f9d64fce3d
sandbox: errno: avoid conflict with libc's errno

When building with LTO, the system libc's `errno` variable used in
arch/sandbox/cpu/os.c conflicts with U-Boot's `errno` (defined in
lib/errno.c) with the following error:
 .../ld: errno@@GLIBC_PRIVATE: TLS definition in /lib64/libc.so.6
         section .tbss mismatches non-TLS reference in
 /tmp/u-boot.EQlEXz.ltrans0.ltrans.o

To avoid this conflict use different asm label for this variable when
CONFIG_SANDBOX is enabled.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
include/errno.h
lib/errno.c