diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java index fb8a16fd37222d..f4596715599910 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java @@ -1559,6 +1559,10 @@ protected Tuple compile( FileTypeSet.of(CppFileTypes.CPP_HEADER), FileTypeSet.of(CppFileTypes.CPP_HEADER)); + if (disallowNopicOutputs && disallowPicOutputs) { + throw new EvalException(location, "Either PIC or no PIC actions have to be created."); + } + CcCompilationHelper helper = new CcCompilationHelper( actions.asActionRegistry(location, actions), @@ -1599,6 +1603,7 @@ protected Tuple compile( } if (disallowPicOutputs) { helper.setGeneratePicAction(false); + helper.setGenerateNoPicAction(true); } try { CompilationInfo compilationInfo = helper.compile();