diff options
Diffstat (limited to 'src/main/java')
3 files changed, 21 insertions, 12 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java index c57f48e732..81839d028d 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java +++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java @@ -461,23 +461,21 @@ public final class SkylarkRuleContext { } @SkylarkCallable(name = "fragments", structField = true, - doc = - "Allows access to configuration fragments in target configuration. " - + "Possible fields are <code>cpp</code>, " - + "<code>java</code> and <code>jvm</code>. " - + "However, rules have to declare their required fragments in order to access them " - + "(see <a href=\"../rules.html#fragments\">here</a>).") + doc = "Allows access to configuration fragments in target configuration. " + + "Possible fields are <code>apple</code>, <code>cpp</code>, " + + "<code>java</code> and <code>jvm</code>. " + + "However, rules have to declare their required fragments in order to access them " + + "(see <a href=\"../rules.html#fragments\">here</a>).") public FragmentCollection getFragments() { return fragments; } @SkylarkCallable(name = "host_fragments", structField = true, - doc = - "Allows access to configuration fragments in host configuration. " - + "Possible fields are <code>cpp</code>, " - + "<code>java</code> and <code>jvm</code>. " - + "However, rules have to declare their required fragments in order to access them " - + "(see <a href=\"../rules.html#fragments\">here</a>).") + doc = "Allows access to configuration fragments in host configuration. " + + "Possible fields are <code>apple</code>, <code>cpp</code>, " + + "<code>java</code> and <code>jvm</code>. " + + "However, rules have to declare their required fragments in order to access them " + + "(see <a href=\"../rules.html#fragments\">here</a>).") public FragmentCollection getHostFragments() { return hostFragments; } diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java index c7e56ea4da..6a7a9d8ac4 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java @@ -27,6 +27,8 @@ import com.google.devtools.build.lib.analysis.config.InvalidConfigurationExcepti import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.apple.AppleCommandLineOptions.AppleBitcodeMode; +import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; +import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.util.Preconditions; import java.util.Map; @@ -36,6 +38,7 @@ import javax.annotation.Nullable; /** * A configuration containing flags required for Apple platforms and tools. */ +@SkylarkModule(name = "apple", doc = "A configuration fragment for Apple platforms") @Immutable public class AppleConfiguration extends BuildConfiguration.Fragment { public static final String XCODE_VERSION_ENV_NAME = "XCODE_VERSION_OVERRIDE"; @@ -107,6 +110,13 @@ public class AppleConfiguration extends BuildConfiguration.Fragment { * apple host system. These environment variables are needed by the apple toolchain. Keys are * variable names and values are their corresponding values. */ + @SkylarkCallable( + name = "apple_host_system_env", + doc = + "Returns a map of environment variables that should be propagated for actions that " + + "build on an apple host system. These environment variables are needed by the apple " + + "toolchain. Keys are variable names and values are their corresponding values." + ) public Map<String, String> getAppleHostSystemEnv() { Optional<DottedVersion> xcodeVersion = getXcodeVersion(); ImmutableMap.Builder<String, String> builder = ImmutableMap.builder(); diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD b/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD index 9317385be0..f3474266c8 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD @@ -17,6 +17,7 @@ java_library( "//src/main/java/com/google/devtools/build/lib:packages-internal", "//src/main/java/com/google/devtools/build/lib:preconditions", "//src/main/java/com/google/devtools/build/lib:shell", + "//src/main/java/com/google/devtools/build/lib:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:syntax", "//src/main/java/com/google/devtools/build/lib:vfs", "//src/main/java/com/google/devtools/build/lib/actions", |