X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=src%2Forg%2Fargeo%2Fbuild%2FMake.java;h=9f6f0846d1a6447c7664bb04ad66db3f5451a482;hb=0057183fefa56b30bb175dce9fd9b6933b980288;hp=71976c00188d70cdff9125efb6912865fcf610f2;hpb=e03e0965db6fb5b8e7968bbe0c049bdbb33f9df4;p=cc0%2Fargeo-build.git diff --git a/src/org/argeo/build/Make.java b/src/org/argeo/build/Make.java index 71976c0..9f6f084 100644 --- a/src/org/argeo/build/Make.java +++ b/src/org/argeo/build/Make.java @@ -378,7 +378,10 @@ public class Make { count++; } Path targetParent = targetJarP.getParent(); - deleteEmptyParents(targetA2, targetParent); + if (targetParent.startsWith(targetA2)) + deleteEmptyParents(targetA2, targetParent); + if (targetParent.startsWith(nativeTargetA2)) + deleteEmptyParents(nativeTargetA2, targetParent); } else { // install Files.createDirectories(targetJarP.getParent()); boolean update = Files.exists(targetJarP); @@ -411,16 +414,16 @@ public class Make { return values != null ? values : new ArrayList<>(); } - /** Delete empty parent directory up to the A2 target (included). */ - void deleteEmptyParents(Path targetA2, Path targetParent) throws IOException { + /** Delete empty parent directory up to the base directory (included). */ + void deleteEmptyParents(Path baseDir, Path targetParent) throws IOException { if (!Files.isDirectory(targetParent)) throw new IllegalArgumentException(targetParent + " must be a directory"); - boolean isA2target = Files.isSameFile(targetA2, targetParent); + boolean isA2target = Files.isSameFile(baseDir, targetParent); if (!Files.list(targetParent).iterator().hasNext()) { Files.delete(targetParent); if (isA2target) return;// stop after deleting A2 base - deleteEmptyParents(targetA2, targetParent.getParent()); + deleteEmptyParents(baseDir, targetParent.getParent()); } }