[U-Boot] [PATCH v2] sandbox: fix compiling of cpu/os.c
Mike Frysinger
vapier at gentoo.org
Fri Dec 2 19:29:07 CET 2011
From: Andreas Bießmann <biessmann at corscience.de>
U-boot itself generally builds with -nostdinc. This is because the
bootloader needs to be completely standalone. In the sandbox arch
though, we need a little bit of code to glue the u-boot world to the
host operating system, and we need to be able to access the host
libc's headers in order to do so.
Currently, we're using -I/usr/include to workaround the global
-nostdinc, but that doesn't work for everyone and for all headers.
Instead, let's filter out -nostdinc when building the os.c code.
Without this patch, some distros hit errors such as:
---8<---
In file included from /usr/include/fcntl.h:27:0,
from os.c:22:
/usr/include/features.h:323:26: fatal error:
bits/predefs.h: No such file or directory
--->8---
Signed-off-by: Andreas Bießmann <biessmann at corscience.de>
Signed-off-by: Mike Frysinger <vapier at gentoo.org>
---
v2
- merge my local changelog with Andreas'
arch/sandbox/cpu/Makefile | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/arch/sandbox/cpu/Makefile b/arch/sandbox/cpu/Makefile
index e5e860b..2ae0f71 100644
--- a/arch/sandbox/cpu/Makefile
+++ b/arch/sandbox/cpu/Makefile
@@ -23,9 +23,6 @@
# MA 02111-1307 USA
#
-# os.c is build in the system environment, so needs standard includes
-CPPFLAGS_arch/sandbox/cpu/os.o += -I/usr/include
-
include $(TOPDIR)/config.mk
LIB = $(obj)lib$(CPU).o
@@ -40,6 +37,10 @@ all: $(obj).depend $(LIB)
$(LIB): $(OBJS)
$(call cmd_link_o_target, $(OBJS))
+# os.c is build in the system environment, so needs standard includes
+$(obj)os.o: ALL_CFLAGS := $(filter-out -nostdinc,$(ALL_CFLAGS))
+$(obj).depend.os: CPPFLAGS := $(filter-out -nostdinc,$(CPPFLAGS))
+
#########################################################################
# defines $(obj).depend target
--
1.7.6.1
More information about the U-Boot
mailing list