From 4c01d2ecfed64205bb794ffa01d705186f6821ed Mon Sep 17 00:00:00 2001 From: Lorenzo Colitti Date: Wed, 22 Nov 2017 00:22:29 +0900 Subject: Always use the bionic UAPI includes for iproute2. On some products, the system include patch lists vendor-specific include directories (e.g., hardware/qcom/msm8996) before the bionic include paths. This causes us to pick up versions of critical include files, such as , which are too old to build iproute2. Fix the iproute2 makefiles to explicitly list the bionic UAPI include directory first. Test: aosp_walleye-eng builds Test: aosp_marlin-eng builds Change-Id: Id0db30f6aed0dd64b6d26a6e88d84798a78c6ab9 --- Android.mk | 4 ++++ ip/Android.mk | 2 +- lib/Android.mk | 6 ++++-- misc/Android.mk | 2 +- tc/Android.mk | 2 +- 5 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Android.mk b/Android.mk index 5053e7d6..9271768b 100644 --- a/Android.mk +++ b/Android.mk @@ -1 +1,5 @@ +# Explicitly list the bionic UAPI includes so we don't pick up stray +# vendor copies of the UAPI includes that are too old for us to build. +UAPI_INCLUDES := bionic/libc/kernel/uapi + include $(call all-subdir-makefiles) diff --git a/ip/Android.mk b/ip/Android.mk index aa1242cf..179611fe 100644 --- a/ip/Android.mk +++ b/ip/Android.mk @@ -19,7 +19,7 @@ LOCAL_SHARED_LIBRARIES := libc libm libdl LOCAL_SHARED_LIBRARIES += libiprouteutil libnetlink -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include +LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include $(UAPI_INCLUDES) LOCAL_CFLAGS := \ -O2 -g \ diff --git a/lib/Android.mk b/lib/Android.mk index d7a8c5f6..424b7fdc 100644 --- a/lib/Android.mk +++ b/lib/Android.mk @@ -7,7 +7,8 @@ LOCAL_SRC_FILES := \ json_print.c json_writer.c LOCAL_MODULE := libiprouteutil LOCAL_SYSTEM_SHARED_LIBRARIES := libc -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include + +LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include $(UAPI_INCLUDES) LOCAL_CFLAGS := -O2 -g -W -Wall \ -DCONFDIR=\"/data/misc/net\" \ -DHAVE_UNISTD_H \ @@ -47,7 +48,8 @@ include $(CLEAR_VARS) LOCAL_SRC_FILES := ll_map.c libnetlink.c LOCAL_MODULE := libnetlink LOCAL_SYSTEM_SHARED_LIBRARIES := libc -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include + +LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include $(UAPI_INCLUDES) LOCAL_CFLAGS := -O2 -g -W -Wall \ -DHAVE_UNISTD_H \ -DHAVE_ERRNO_H \ diff --git a/misc/Android.mk b/misc/Android.mk index b385e1e6..79ab641e 100644 --- a/misc/Android.mk +++ b/misc/Android.mk @@ -10,7 +10,7 @@ LOCAL_MODULE_TAGS := debug LOCAL_SHARED_LIBRARIES += libiprouteutil libnetlink -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include +LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include $(UAPI_INCLUDES) ## # "-x c" forces the lex/yacc files to be compiled as c the build system diff --git a/tc/Android.mk b/tc/Android.mk index 467b08a0..78463a86 100644 --- a/tc/Android.mk +++ b/tc/Android.mk @@ -12,7 +12,7 @@ LOCAL_SYSTEM_SHARED_LIBRARIES := \ LOCAL_SHARED_LIBRARIES += libiprouteutil libnetlink -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include +LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include $(UAPI_INCLUDES) LOCAL_CFLAGS := -O2 -g -W -Wall -Wno-pointer-arith -Wno-sign-compare -Werror \ -Wno-unused-parameter \ -- cgit v1.2.3