task.setTargetPlatform(binary.getTargetPlatform());
task.source(sourceSet.getSource());
final Project project = task.getProject();
task.setObjectFileDir(project.file(project.getBuildDir() + "/objs/" + binary.getNamingScheme().getOutputDirectoryBase() + "/" + sourceSet.getFullName()));
Tool assemblerTool = (Tool) ((ExtensionAware) binary).getExtensions().getByName("assembler");
task.setAssemblerArgs(assemblerTool.getArgs());
binary.getTasks().getCreateOrLink().source(task.getOutputs().getFiles().getAsFileTree().matching(new PatternSet().include("**/*.obj", "**/*.o")));