Flip `--incompatible_dont_enable_host_nonhost_crosstool_features`
RELNOTES: Incompatible flag `--incompatible_dont_enable_host_nonhost_crosstool_features` has been flipped. See https://github.com/bazelbuild/bazel/issues/7407 for more information.
Closes #8512.
PiperOrigin-RevId: 250841419
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
index 58fd83c..abe07496 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
@@ -726,7 +726,7 @@
@Option(
name = "incompatible_dont_enable_host_nonhost_crosstool_features",
- defaultValue = "false",
+ defaultValue = "true",
documentationCategory = OptionDocumentationCategory.TOOLCHAIN,
effectTags = {OptionEffectTag.LOADING_AND_ANALYSIS},
metadataTags = {
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/mock/cc_toolchain_config.bzl b/src/test/java/com/google/devtools/build/lib/analysis/mock/cc_toolchain_config.bzl
index 656604f..9de5293 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/mock/cc_toolchain_config.bzl
+++ b/src/test/java/com/google/devtools/build/lib/analysis/mock/cc_toolchain_config.bzl
@@ -522,7 +522,6 @@
],
),
],
- requires = [feature_set(features = ["nonhost"])],
)
_simple_thin_lto_feature = feature(
diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java
index 76002e3..6f569a6 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java
@@ -1229,64 +1229,6 @@
assertThat(flags).containsNoneOf("-fastbuild", "-opt");
}
- private List<String> getHostAndTargetFlags(boolean useHost, boolean isDisabledByFlag)
- throws Exception {
- AnalysisMock.get()
- .ccSupport()
- .setupCcToolchainConfig(
- mockToolsConfig,
- CcToolchainConfig.builder()
- .withFeatures(
- MockCcSupport.HOST_AND_NONHOST_CONFIGURATION_FEATURES,
- CppRuleClasses.SUPPORTS_PIC));
- scratch.overwriteFile("mode/BUILD", "cc_library(name = 'a', srcs = ['a.cc'])");
- useConfiguration(
- "--cpu=k8",
- isDisabledByFlag
- ? "--incompatible_dont_enable_host_nonhost_crosstool_features"
- : "--noincompatible_dont_enable_host_nonhost_crosstool_features");
- ConfiguredTarget target;
- String objectPath;
- if (useHost) {
- target = getHostConfiguredTarget("//mode:a");
- objectPath = "_objs/a/a.o";
- } else {
- target = getConfiguredTarget("//mode:a");
- objectPath = "_objs/a/a.pic.o";
- }
- Artifact objectArtifact = getBinArtifact(objectPath, target);
- CppCompileAction action = (CppCompileAction) getGeneratingAction(objectArtifact);
- assertThat(action).isNotNull();
- return action.getCompilerOptions();
- }
-
- @Test
- public void testHostAndNonHostFeatures() throws Exception {
- useConfiguration();
- List<String> flags;
-
- flags = getHostAndTargetFlags(/* useHost= */ true, /* isDisabledByFlag= */ false);
- assertThat(flags).contains("-host");
- assertThat(flags).doesNotContain("-nonhost");
-
- flags = getHostAndTargetFlags(/* useHost= */ false, /* isDisabledByFlag= */ false);
- assertThat(flags).contains("-nonhost");
- assertThat(flags).doesNotContain("-host");
- }
-
- @Test
- public void testHostAndNonHostFeaturesDisabledByTheFlag() throws Exception {
- List<String> flags;
-
- flags = getHostAndTargetFlags(/* useHost= */ true, /* isDisabledByFlag= */ true);
- assertThat(flags).doesNotContain("-host");
- assertThat(flags).doesNotContain("-nonhost");
-
- flags = getHostAndTargetFlags(/* useHost= */ false, /* isDisabledByFlag= */ true);
- assertThat(flags).doesNotContain("-nonhost");
- assertThat(flags).doesNotContain("-host");
- }
-
@Test
public void testIncludePathsOutsideExecutionRoot() throws Exception {
scratchRule(
diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/CompileBuildVariablesTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/CompileBuildVariablesTest.java
index 96d8c2c..87d6ed2 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/cpp/CompileBuildVariablesTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/CompileBuildVariablesTest.java
@@ -24,7 +24,6 @@
import com.google.devtools.build.lib.analysis.util.AnalysisMock;
import com.google.devtools.build.lib.analysis.util.BuildViewTestCase;
import com.google.devtools.build.lib.packages.util.Crosstool.CcToolchainConfig;
-import com.google.devtools.build.lib.packages.util.MockCcSupport;
import com.google.devtools.build.lib.packages.util.MockPlatformSupport;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -220,8 +219,7 @@
"fission_flags_for_lto_backend",
CppRuleClasses.PER_OBJECT_DEBUG_INFO,
CppRuleClasses.SUPPORTS_START_END_LIB,
- CppRuleClasses.THIN_LTO,
- MockCcSupport.HOST_AND_NONHOST_CONFIGURATION_FEATURES));
+ CppRuleClasses.THIN_LTO));
useConfiguration("--fission=yes", "--features=thin_lto");
scratch.file("x/BUILD", "cc_binary(name = 'bin', srcs = ['bin.cc'])");
diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/LinkBuildVariablesTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/LinkBuildVariablesTest.java
index 706013f..79f8e53 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/cpp/LinkBuildVariablesTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/LinkBuildVariablesTest.java
@@ -24,7 +24,6 @@
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.util.AnalysisMock;
import com.google.devtools.build.lib.packages.util.Crosstool.CcToolchainConfig;
-import com.google.devtools.build.lib.packages.util.MockCcSupport;
import com.google.devtools.build.lib.rules.cpp.CcToolchainVariables.LibraryToLinkValue;
import com.google.devtools.build.lib.rules.cpp.CcToolchainVariables.VariableValue;
import com.google.devtools.build.lib.rules.cpp.Link.LinkTargetType;
@@ -217,7 +216,6 @@
.withFeatures(
CppRuleClasses.THIN_LTO,
CppRuleClasses.SUPPORTS_PIC,
- MockCcSupport.HOST_AND_NONHOST_CONFIGURATION_FEATURES,
CppRuleClasses.SUPPORTS_INTERFACE_SHARED_LIBRARIES,
CppRuleClasses.SUPPORTS_DYNAMIC_LINKER,
CppRuleClasses.SUPPORTS_START_END_LIB));
@@ -343,7 +341,6 @@
CcToolchainConfig.builder()
.withFeatures(
CppRuleClasses.THIN_LTO,
- MockCcSupport.HOST_AND_NONHOST_CONFIGURATION_FEATURES,
CppRuleClasses.SUPPORTS_DYNAMIC_LINKER,
CppRuleClasses.SUPPORTS_PIC,
CppRuleClasses.SUPPORTS_INTERFACE_SHARED_LIBRARIES,