package fr.monlouyan.bakefile; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class BakefileParser { private String filename; public BakefileParser(String filename) { this.filename = filename; } public List parse() { List targets = new ArrayList<>(); try { List lines = Files.readAllLines(Paths.get(filename)); for (String line : lines) { if (line.contains(":")) { String[] parts = line.split(":"); String name = parts[0].trim(); String[] deps = parts[1].trim().split(" "); System.out.println("Target found: " + name + " with dependencies " + Arrays.toString(deps)); targets.add(new Target(name, Arrays.asList(deps), "gcc -o " + name + " " + name + ".c")); } } } catch (IOException e) { e.printStackTrace(); } return targets; } }