From: Peter Korsgaard Date: Thu, 1 Mar 2018 20:54:29 +0000 (+0100) Subject: uboot: ensure host includes are searched before system default includes X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0bf80e4bcd5277e3ad935e03c632deba4c7316f2;p=buildroot.git uboot: ensure host includes are searched before system default includes Commit baae5156ce37e (uboot: use local fdt headers) changed the uboot logic to pass the host include directories with -idirafter instead of -I, so include files local to u-boot would be preferred over host includes. This unfortunately breaks configurations using BR2_TARGET_UBOOT_NEEDS_OPENSSL on hosts with incompatible openssl headers installed in the system default include directories as explained here: http://lists.busybox.net/pipermail/buildroot/2018-March/214651.html The problem is that -idirafter directories gets added to the very end of the search order, AFTER the system default directories. Instead use -isystem which causes the directories to be added after -I but before the system default directories. With this in place, the include directories of u-boot will first be scanned, followed by the host includes and finally the system default include directories. Signed-off-by: Peter Korsgaard --- diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk index c7cd739150..5da339850d 100644 --- a/boot/uboot/uboot.mk +++ b/boot/uboot/uboot.mk @@ -131,7 +131,7 @@ endif UBOOT_MAKE_OPTS += \ CROSS_COMPILE="$(TARGET_CROSS)" \ ARCH=$(UBOOT_ARCH) \ - HOSTCC="$(HOSTCC) $(subst -I/,-idirafter /,$(subst -I /,-idirafter /,$(HOST_CFLAGS)))" \ + HOSTCC="$(HOSTCC) $(subst -I/,-isystem /,$(subst -I /,-isystem /,$(HOST_CFLAGS)))" \ HOSTLDFLAGS="$(HOST_LDFLAGS)" ifeq ($(BR2_TARGET_UBOOT_NEEDS_ATF_BL31),y)