From c8f6d0e6aa4d9a6f24dd4ba4f9ac7878945d6e89 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Tue, 21 Mar 2023 11:48:54 +0100 Subject: [PATCH] Fix copy of legal files at bundle level --- src/org/argeo/build/Make.java | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/src/org/argeo/build/Make.java b/src/org/argeo/build/Make.java index 5a5fd64..be3764c 100644 --- a/src/org/argeo/build/Make.java +++ b/src/org/argeo/build/Make.java @@ -476,21 +476,15 @@ public class Make { for (Path p : sdkSrcLegal) toInclude.put(p.getFileName().toString(), p); } - DirectoryStream bundleLegal = Files.newDirectoryStream(bundleBase, (p) -> { - String fileName = p.getFileName().toString(); - return switch (fileName) { - case "NOTICE": - case "LICENSE": - case "COPYING": - case "COPYING.LESSER": - yield true; - default: - yield false; - }; - }); - // bundle can override - for (Path p : bundleLegal) - toInclude.put(p.getFileName().toString(), p); + for(Iterator> entries=toInclude.entrySet().iterator();entries.hasNext();) { + Map.Entry entry= entries.next(); + Path inBundle = bundleBase.resolve(entry.getValue().getFileName()); + // remove file if it is also defined at bundle level + // since it has already been copied + // and has priority + if(Files.exists(inBundle)) + entries.remove(); + } return toInclude; } -- 2.30.2