From 5e96a4a7fd26e752554cdcc179541267fa397126 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Wed, 19 Oct 2022 08:34:13 +0200 Subject: [PATCH] Simplify and improve TP packaging --- .gitmodules | 3 -- rebuild/org.argeo.tp/Makefile | 15 +++++++-- rebuild/org.argeo.tp/src/.gitignore | 1 + repackage/Make.java | 48 ----------------------------- repackage/Makefile | 35 ++++++++++++--------- sdk/argeo-build | 2 +- src/org.argeo.tp/ee4j-mail | 1 - 7 files changed, 34 insertions(+), 71 deletions(-) create mode 100644 rebuild/org.argeo.tp/src/.gitignore delete mode 100644 repackage/Make.java delete mode 160000 src/org.argeo.tp/ee4j-mail diff --git a/.gitmodules b/.gitmodules index 8ee8d8c..07b10ca 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,6 +2,3 @@ path = sdk/argeo-build url = http://git.argeo.org/cc0/argeo-build.git branch = unstable -[submodule "src/org.argeo.tp/ee4j-mail"] - path = src/org.argeo.tp/ee4j-mail - url = https://github.com/eclipse-ee4j/mail.git diff --git a/rebuild/org.argeo.tp/Makefile b/rebuild/org.argeo.tp/Makefile index 7cbbc1e..67463cf 100644 --- a/rebuild/org.argeo.tp/Makefile +++ b/rebuild/org.argeo.tp/Makefile @@ -1,10 +1,19 @@ include ../../sdk.mk .PHONY: clean all osgi -all: prepare osgi +all: retrieve-ee4j-mbox osgi -prepare: - rsync -a --exclude module-info.java $(SDK_SRC_BASE)/src/org.argeo.tp/ee4j-mail/mbox/src/main/java/ com.sun.mail.mbox/src +retrieve-ee4j-mbox: SRC_DIR=src/ee4j-mail +retrieve-ee4j-mbox: + rm -rf $(SRC_DIR) + mkdir -p $(SRC_DIR) + #git -C $(SRC_DIR) init + #git -C $(SRC_DIR) remote add -f origin https://github.com/eclipse-ee4j/mail.git + #git -C $(SRC_DIR) config core.sparseCheckout true + #echo "mbox" >> $(SRC_DIR)/.git/info/sparse-checkout + #git -C $(SRC_DIR) pull origin 1.6.7 + git clone --branch 1.6.7 https://github.com/eclipse-ee4j/mail.git $(SRC_DIR) + rsync -a --delete --exclude module-info.java $(SRC_DIR)/mbox/src/main/java/ com.sun.mail.mbox/src A2_CATEGORY = org.argeo.tp diff --git a/rebuild/org.argeo.tp/src/.gitignore b/rebuild/org.argeo.tp/src/.gitignore new file mode 100644 index 0000000..ca46c96 --- /dev/null +++ b/rebuild/org.argeo.tp/src/.gitignore @@ -0,0 +1 @@ +ee4j-mail/ \ No newline at end of file diff --git a/repackage/Make.java b/repackage/Make.java deleted file mode 100644 index 11c7bcd..0000000 --- a/repackage/Make.java +++ /dev/null @@ -1,48 +0,0 @@ -import java.nio.file.Path; -import java.nio.file.Paths; - -import org.argeo.slc.factory.A2Factory; - -class Make { - public static void main(String[] args) { - if (args.length < 1) { - System.err.println("Usage: "); - System.exit(1); - } - Path a2Base = Paths.get(args[0]).toAbsolutePath().normalize(); - Path descriptorsBase = Paths.get("./tp").toAbsolutePath().normalize(); - A2Factory factory = new A2Factory(a2Base, descriptorsBase, true); - - // SDK - factory.processCategory(Paths.get("org.argeo.tp.sdk")); - - // Eclipse - factory.processCategory(Paths.get("osgi/api/org.argeo.tp.osgi")); - factory.processEclipseArchive(Paths.get("osgi/equinox/org.argeo.tp.osgi", "eclipse-equinox")); - factory.processEclipseArchive(Paths.get("osgi/equinox/org.argeo.tp.eclipse", "eclipse-equinox")); - - factory.processEclipseArchive(Paths.get("swt/rap/org.argeo.tp.swt", "eclipse-rap")); - factory.processEclipseArchive(Paths.get("swt/rap/org.argeo.tp.swt.workbench", "eclipse-rap")); - - factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); - - factory.processEclipseArchive(Paths.get("lib/linux/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); - factory.processEclipseArchive(Paths.get("lib/linux/aarch64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); - factory.processEclipseArchive(Paths.get("lib/win32/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); - factory.processEclipseArchive(Paths.get("lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); - - factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", "eclipse-nebula")); - factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt.workbench", "eclipse-rcp")); - factory.processCategory(Paths.get("swt/rcp/org.argeo.tp.swt.workbench")); - - // Maven - factory.processCategory(Paths.get("org.argeo.tp")); - factory.processCategory(Paths.get("org.argeo.tp.apache")); - factory.processCategory(Paths.get("org.argeo.tp.jetty")); - factory.processCategory(Paths.get("org.argeo.tp.jcr")); - factory.processCategory(Paths.get("org.argeo.tp.formats")); - factory.processCategory(Paths.get("org.argeo.tp.poi")); - factory.processCategory(Paths.get("org.argeo.tp.gis")); - } - -} \ No newline at end of file diff --git a/repackage/Makefile b/repackage/Makefile index 40aef3e..2985e0d 100644 --- a/repackage/Makefile +++ b/repackage/Makefile @@ -1,8 +1,6 @@ include ../sdk.mk .PHONY: clean all -all: distribution - BOOTSTRAP_BASE=$(SDK_BUILD_BASE)/bootstrap A2_OUTPUT = $(SDK_BUILD_BASE)/a2 @@ -29,22 +27,29 @@ org.argeo.tp.formats \ org.argeo.tp.poi \ org.argeo.tp.gis \ +TODOS_REPACKAGE = $(foreach category, $(CATEGORIES),$(BUILD_BASE)/$(category)/to-repackage) + +BUILD_BASE = $(SDK_BUILD_BASE)/$(shell basename $(SDK_SRC_BASE)) + +all: $(BUILD_BASE)/repackaged -distribution: +.SECONDEXPANSION: + +$(BUILD_BASE)/repackaged : CATEGORIES_TO_REPACKAGE = $(subst $(abspath $(BUILD_BASE))/,, $(subst to-repackage,, $?)) +$(BUILD_BASE)/repackaged : $(TODOS_REPACKAGE) $(JVM) -cp \ - $(BOOTSTRAP_BASE)/bndlib.jar:$(BOOTSTRAP_BASE)/slf4j-api.jar:$(BOOTSTRAP_BASE)/org.argeo.slc.api/bin:$(BOOTSTRAP_BASE)/org.argeo.slc.factory/bin \ - $(SDK_SRC_BASE)/sdk/argeo-build/src/org/argeo/build/Repackage.java $(A2_OUTPUT) $(CATEGORIES) + $(BOOTSTRAP_BASE)/bndlib.jar:$(BOOTSTRAP_BASE)/slf4j-api.jar \ + $(SDK_SRC_BASE)/sdk/argeo-build/src/org/argeo/build/Repackage.java $(A2_OUTPUT) $(CATEGORIES_TO_REPACKAGE) + touch $(BUILD_BASE)/repackaged + +$(BUILD_BASE)/%/to-repackage : $$(shell find % -type f ) + @rm -rf $(dir $@) + @mkdir -p $(dir $@) + @touch $@ clean: - rm -rf $(A2_OUTPUT)/org.argeo.tp - rm -rf $(A2_OUTPUT)/org.argeo.tp.* - rm -rf $(A2_OUTPUT)/*/org.argeo.tp - rm -rf $(A2_OUTPUT)/*/org.argeo.tp.* - rm -rf $(A2_OUTPUT)/*/*/org.argeo.tp - rm -rf $(A2_OUTPUT)/*/*/org.argeo.tp.* - rm -rf $(A2_OUTPUT)/*/*/*/org.argeo.tp - rm -rf $(A2_OUTPUT)/*/*/*/org.argeo.tp.* - rm -rf $(A2_OUTPUT)/*/*/*/*/org.argeo.tp - rm -rf $(A2_OUTPUT)/*/*/*/*/org.argeo.tp.* + $(foreach category, $(CATEGORIES), rm -rf $(A2_OUTPUT)/$(category)) + $(foreach category, $(CATEGORIES), rm -rf $(BUILD_BASE)/$(category)) + rm -f $(BUILD_BASE)/repackaged include $(SDK_SRC_BASE)/sdk/argeo-build/osgi.mk \ No newline at end of file diff --git a/sdk/argeo-build b/sdk/argeo-build index 74232bb..011962b 160000 --- a/sdk/argeo-build +++ b/sdk/argeo-build @@ -1 +1 @@ -Subproject commit 74232bbbcd17259fcaf4b3ff29e30e7a795bc945 +Subproject commit 011962b1bb63d375622dbe79a50c45f16374b0a1 diff --git a/src/org.argeo.tp/ee4j-mail b/src/org.argeo.tp/ee4j-mail deleted file mode 160000 index 33c6745..0000000 --- a/src/org.argeo.tp/ee4j-mail +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 33c67452393344c7e761242a26fb8f04f993d830 -- 2.30.2