Fix C++ link order for py_library and py_binary rules.
--
MOS_MIGRATED_REVID=101756783
diff --git a/src/main/java/com/google/devtools/build/lib/rules/python/PyBinary.java b/src/main/java/com/google/devtools/build/lib/rules/python/PyBinary.java
index 946cf76..a60e0d7 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/python/PyBinary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/python/PyBinary.java
@@ -21,7 +21,6 @@
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.RunfilesProvider;
import com.google.devtools.build.lib.analysis.RunfilesSupport;
-import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.rules.RuleConfiguredTargetFactory;
import com.google.devtools.build.lib.rules.cpp.CcLinkParams;
import com.google.devtools.build.lib.rules.cpp.CcLinkParamsProvider;
@@ -124,10 +123,9 @@
@Override
protected void collect(CcLinkParams.Builder builder, boolean linkingStatically,
boolean linkShared) {
- Iterable<? extends TransitiveInfoCollection> deps =
- ruleContext.getPrerequisites("deps", Mode.TARGET);
- builder.addTransitiveTargets(deps);
- builder.addTransitiveLangTargets(deps, PyCcLinkParamsProvider.TO_LINK_PARAMS);
+ builder.addTransitiveTargets(ruleContext.getPrerequisites("deps", Mode.TARGET),
+ PyCcLinkParamsProvider.TO_LINK_PARAMS,
+ CcLinkParamsProvider.TO_LINK_PARAMS);
}
};
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/python/PyLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/python/PyLibrary.java
index 2904e9f..7372932 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/python/PyLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/python/PyLibrary.java
@@ -61,10 +61,9 @@
@Override
protected void collect(CcLinkParams.Builder builder, boolean linkingStatically,
boolean linkShared) {
- builder.addTransitiveTargets(ruleContext.getPrerequisites("deps", Mode.TARGET));
- builder.addTransitiveLangTargets(
- ruleContext.getPrerequisites("deps", Mode.TARGET),
- PyCcLinkParamsProvider.TO_LINK_PARAMS);
+ builder.addTransitiveTargets(ruleContext.getPrerequisites("deps", Mode.TARGET),
+ PyCcLinkParamsProvider.TO_LINK_PARAMS,
+ CcLinkParamsProvider.TO_LINK_PARAMS);
}
};