diff options
author | cparsons <cparsons@google.com> | 2017-06-29 22:38:18 +0200 |
---|---|---|
committer | Marcel Hlopko <hlopko@google.com> | 2017-06-30 13:00:45 +0200 |
commit | 50d347168a56dda30d904b644162dbfaaf270f51 (patch) | |
tree | 6d4b85b7d75e3e38d52bcd9c2f9d3dee4093e655 /src/main/java/com/google/devtools/build/lib/rules | |
parent | 8b295441b9944eb9b4418c426742caac7ab018c7 (diff) |
{ios,macos}_minimum_os flags now default to {ios_macos}_sdk_version values
RELNOTES: None.
PiperOrigin-RevId: 160566592
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
3 files changed, 12 insertions, 10 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java index fd328754ec..c9c91a2d7b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleCommandLineOptions.java @@ -40,10 +40,6 @@ import java.util.List; */ public class AppleCommandLineOptions extends FragmentOptions { - @VisibleForTesting - public static final String DEFAULT_MINIMUM_IOS = "7.0"; - public static final String DEFAULT_MINIMUM_MACOS = "10.10"; - @Option( name = "xcode_version", defaultValue = "null", @@ -105,7 +101,7 @@ public class AppleCommandLineOptions extends FragmentOptions { @Option( name = "ios_minimum_os", - defaultValue = DEFAULT_MINIMUM_IOS, + defaultValue = "null", category = "flags", converter = DottedVersionConverter.class, documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, @@ -138,7 +134,7 @@ public class AppleCommandLineOptions extends FragmentOptions { @Option( name = "macos_minimum_os", - defaultValue = DEFAULT_MINIMUM_MACOS, + defaultValue = "null", category = "flags", converter = DottedVersionConverter.class, documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, 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 860afbca2d..36394f51a3 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 @@ -101,6 +101,7 @@ public class AppleConfiguration extends BuildConfiguration.Fragment { String cpu, @Nullable DottedVersion xcodeVersion, DottedVersion iosSdkVersion, + DottedVersion iosMinimumOs, DottedVersion watchosSdkVersion, DottedVersion watchosMinimumOs, DottedVersion tvosSdkVersion, @@ -108,7 +109,7 @@ public class AppleConfiguration extends BuildConfiguration.Fragment { DottedVersion macosSdkVersion, DottedVersion macosMinimumOs) { this.iosSdkVersion = Preconditions.checkNotNull(iosSdkVersion, "iosSdkVersion"); - this.iosMinimumOs = Preconditions.checkNotNull(appleOptions.iosMinimumOs, "iosMinimumOs"); + this.iosMinimumOs = Preconditions.checkNotNull(iosMinimumOs, "iosMinimumOs"); this.watchosSdkVersion = Preconditions.checkNotNull(watchosSdkVersion, "watchOsSdkVersion"); this.watchosMinimumOs = @@ -616,8 +617,8 @@ public class AppleConfiguration extends BuildConfiguration.Fragment { DottedVersion iosSdkVersion = (appleOptions.iosSdkVersion != null) ? appleOptions.iosSdkVersion : xcodeVersionProperties.getDefaultIosSdkVersion(); - // TODO(cparsons): Look into ios_minimum_os matching the defaulting behavior of the other - // platforms. + DottedVersion iosMinimumOsVersion = (appleOptions.iosMinimumOs != null) + ? appleOptions.iosMinimumOs : iosSdkVersion; DottedVersion watchosSdkVersion = (appleOptions.watchOsSdkVersion != null) ? appleOptions.watchOsSdkVersion : xcodeVersionProperties.getDefaultWatchosSdkVersion(); DottedVersion watchosMinimumOsVersion = (appleOptions.watchosMinimumOs != null) @@ -636,6 +637,7 @@ public class AppleConfiguration extends BuildConfiguration.Fragment { cpu, xcodeVersionProperties.getXcodeVersion().orNull(), iosSdkVersion, + iosMinimumOsVersion, watchosSdkVersion, watchosMinimumOsVersion, tvosSdkVersion, diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/IosExtension.java b/src/main/java/com/google/devtools/build/lib/rules/objc/IosExtension.java index e7747bc258..c8d74f9b21 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/IosExtension.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/IosExtension.java @@ -31,6 +31,7 @@ import com.google.devtools.build.lib.rules.apple.DottedVersion; import com.google.devtools.build.lib.rules.apple.Platform.PlatformType; import com.google.devtools.build.lib.rules.objc.ReleaseBundlingSupport.SplitArchTransition; import java.io.Serializable; +import javax.annotation.Nullable; /** * Implementation for {@code ios_extension}. @@ -95,8 +96,11 @@ public class IosExtension extends ReleaseBundlingTargetFactory { * @param fromFlag the minimum OS version from command line flag * @param minimumOSVersion the minumum OS version the extension should be built with */ - private static DottedVersion determineMinimumOsVersion(DottedVersion fromFlag, + private static DottedVersion determineMinimumOsVersion(@Nullable DottedVersion fromFlag, DottedVersion minimumOSVersion) { + if (fromFlag == null) { + return minimumOSVersion; + } return Ordering.natural().max(fromFlag, minimumOSVersion); } |