From 5ba5144e58365e4ec4c316f1438047346d933df3 Mon Sep 17 00:00:00 2001 From: Googler Date: Wed, 5 Jul 2017 13:35:20 -0400 Subject: RELNOTES: Add option for Android specific grte_top PiperOrigin-RevId: 160974656 --- .../build/lib/rules/android/AndroidConfiguration.java | 12 ++++++++++++ .../devtools/build/lib/rules/android/AndroidRuleClasses.java | 2 ++ 2 files changed, 14 insertions(+) (limited to 'src/main/java/com/google/devtools/build') diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java index 117545aca7..2672fbad0f 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java @@ -33,6 +33,7 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.packages.Attribute.SplitTransition; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.DynamicMode; import com.google.devtools.build.lib.rules.cpp.CppOptions.DynamicModeConverter; +import com.google.devtools.build.lib.rules.cpp.CppOptions.LibcTopLabelConverter; import com.google.devtools.common.options.Converter; import com.google.devtools.common.options.Converters; import com.google.devtools.common.options.EnumConverter; @@ -280,6 +281,17 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { ) public String cppCompiler; + @Option( + name = "android_grte_top", + defaultValue = "null", + converter = LibcTopLabelConverter.class, + category = "semantics", + documentationCategory = OptionDocumentationCategory.EXECUTION_STRATEGY, + effectTags = {OptionEffectTag.EXECUTION}, + help = "The Android target grte_top." + ) + public Label androidLibcTopLabel; + @Option( name = "android_dynamic_mode", defaultValue = "off", diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidRuleClasses.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidRuleClasses.java index 18c26d5a2f..ac9fb18fe5 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidRuleClasses.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidRuleClasses.java @@ -245,6 +245,7 @@ public final class AndroidRuleClasses { BuildOptions splitOptions = buildOptions.clone(); splitOptions.get(CppOptions.class).cppCompiler = androidOptions.cppCompiler; + splitOptions.get(CppOptions.class).libcTopLabel = androidOptions.androidLibcTopLabel; splitOptions.get(BuildConfiguration.Options.class).cpu = androidOptions.cpu; splitOptions.get(CppOptions.class).dynamicMode = androidOptions.dynamicMode; setCrosstoolToAndroid(splitOptions, buildOptions); @@ -264,6 +265,7 @@ public final class AndroidRuleClasses { splitOptions.get(AndroidConfiguration.Options.class).cpu = cpu; splitOptions.get(BuildConfiguration.Options.class).cpu = cpu; splitOptions.get(CppOptions.class).cppCompiler = androidOptions.cppCompiler; + splitOptions.get(CppOptions.class).libcTopLabel = androidOptions.androidLibcTopLabel; splitOptions.get(CppOptions.class).dynamicMode = androidOptions.dynamicMode; setCrosstoolToAndroid(splitOptions, buildOptions); result.add(splitOptions); -- cgit v1.2.3