From e945a4d212edd9c15805b9787e9a56f214244431 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Thu, 10 Jun 2021 13:10:22 -0700 Subject: [PATCH] Consistently prepend arch-specific headers Add variant_prepend to Export_include_dirs, Export_system_include_dirs and Generated_headers to match Local_include_dirs so that architecture-specific headers are found before common headers. Test: m checkbuild Test: TestIncludeDirectoryOrdering Change-Id: I2bf9d4373fd256e500c1f8d6c84cf593e8fdd170 --- cc/cc_test.go | 10 +++++----- cc/compiler.go | 2 +- cc/library.go | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cc/cc_test.go b/cc/cc_test.go index 2d0d78b86..ef413fe42 100644 --- a/cc/cc_test.go +++ b/cc/cc_test.go @@ -4345,12 +4345,12 @@ func TestIncludeDirectoryOrdering(t *testing.T) { "${config.ArmToolchainClangCflags}", "${config.ArmClangArmv7ANeonCflags}", "${config.ArmClangGenericCflags}", - "export_include_dirs", - "linux_export_include_dirs", - "android_export_include_dirs", - "arm_export_include_dirs", - "lib32_export_include_dirs", "android_arm_export_include_dirs", + "lib32_export_include_dirs", + "arm_export_include_dirs", + "android_export_include_dirs", + "linux_export_include_dirs", + "export_include_dirs", "android_arm_local_include_dirs", "lib32_local_include_dirs", "arm_local_include_dirs", diff --git a/cc/compiler.go b/cc/compiler.go index 78a5a5da3..69ead3089 100644 --- a/cc/compiler.go +++ b/cc/compiler.go @@ -92,7 +92,7 @@ type BaseCompilerProperties struct { // list of generated headers to add to the include path. These are the names // of genrule modules. - Generated_headers []string `android:"arch_variant"` + Generated_headers []string `android:"arch_variant,variant_prepend"` // pass -frtti instead of -fno-rtti Rtti *bool diff --git a/cc/library.go b/cc/library.go index 93bd56c6f..196d57579 100644 --- a/cc/library.go +++ b/cc/library.go @@ -183,11 +183,11 @@ type FlagExporterProperties struct { // be added to the include path (using -I) for this module and any module that links // against this module. Directories listed in export_include_dirs do not need to be // listed in local_include_dirs. - Export_include_dirs []string `android:"arch_variant"` + Export_include_dirs []string `android:"arch_variant,variant_prepend"` // list of directories that will be added to the system include path // using -isystem for this module and any module that links against this module. - Export_system_include_dirs []string `android:"arch_variant"` + Export_system_include_dirs []string `android:"arch_variant,variant_prepend"` Target struct { Vendor, Product struct {