ITool[] buildTools = h.buildTools;
ArduinoManagedBuildGnuToolInfo[] gnuToolInfos = h.gnuToolInfos;
// Get the information regarding the tool's inputs and outputs from the
// objects
// created by calculateToolInputsOutputs
IManagedBuildGnuToolInfo toolInfo = null;
for (int i = 0; i < buildTools.length; i++) {
if (tool == buildTools[i]) {
toolInfo = gnuToolInfos[i];
break;
}
}
if (toolInfo == null)
return false;
// Populate the output Vectors
inputs.addAll(toolInfo.getCommandInputs());
outputs.addAll(toolInfo.getCommandOutputs());
enumeratedPrimaryOutputs.addAll(toolInfo.getEnumeratedPrimaryOutputs());
enumeratedSecondaryOutputs.addAll(toolInfo.getEnumeratedSecondaryOutputs());
outputVariables.addAll(toolInfo.getOutputVariables());
Vector<String> unprocessedDependencies = toolInfo.getCommandDependencies();
for (String path : unprocessedDependencies) {
dependencies.add(ensurePathIsGNUMakeTargetRuleCompatibleSyntax(path));
}
additionalTargets.addAll(toolInfo.getAdditionalTargets());
if (bTargetTool && managedProjectOutputs != null) {
for (String output : managedProjectOutputs) {
dependencies.add(output);
}