Use centralised build scripts
authorMathieu Baudier <mbaudier@argeo.org>
Sat, 26 Feb 2022 10:39:24 +0000 (11:39 +0100)
committerMathieu Baudier <mbaudier@argeo.org>
Sat, 26 Feb 2022 10:39:24 +0000 (11:39 +0100)
.gitmodules [new file with mode: 0644]
Makefile
cnf/build.bnd
cnf/unstable.bnd
sdk/argeo-build [new submodule]
sdk/deb.mk [deleted file]
sdk/ecj.args [deleted file]
sdk/excludes.txt [deleted file]
sdk/osgi.mk [deleted file]

diff --git a/.gitmodules b/.gitmodules
new file mode 100644 (file)
index 0000000..07b10ca
--- /dev/null
@@ -0,0 +1,4 @@
+[submodule "sdk/argeo-build"]
+       path = sdk/argeo-build
+       url = http://git.argeo.org/cc0/argeo-build.git
+       branch = unstable
index 8ebc748b9949419fb3119c5dbf855ca80329629b..eec35df132c1c19ca59faf147b71ab2186c0a343 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -43,4 +43,4 @@ A2_BASE = $(A2_OUTPUT)
 VPATH = .:ext
 DEP_CATEGORIES = org.argeo.tp org.argeo.tp.apache org.argeo.tp.sdk org.argeo.tp.jcr
 
-include  $(SDK_SRC_BASE)/sdk/osgi.mk
\ No newline at end of file
+include  $(SDK_SRC_BASE)/sdk/argeo-build/osgi.mk
\ No newline at end of file
index 38f5f286a6df0d08f9ac5298e4ee84bfbf7642ea..f6e8be27226265627e5d7817893fdd08eb4d901e 100644 (file)
@@ -1,3 +1,3 @@
 -include: \
-${workspace}/cnf/argeo.bnd, \
-${workspace}/cnf/unstable.bnd
+${workspace}/cnf/unstable.bnd, \
+${workspace}/sdk/argeo-build/argeo.bnd, \
index dc952c9c3abf696fba7a3a271e57fa003d1cbee2..671f5bef92db5c797ce18906ff2e8c2cdf5a6078 100644 (file)
@@ -1,4 +1,6 @@
-version.released=2.3.1
+MAJOR=2
+MINOR=3
+MICRO=1
 qualifier=.next
 
 category=org.argeo.slc
diff --git a/sdk/argeo-build b/sdk/argeo-build
new file mode 160000 (submodule)
index 0000000..086f450
--- /dev/null
@@ -0,0 +1 @@
+Subproject commit 086f450078ec980aa1fa616f21fa5289c35212b0
diff --git a/sdk/deb.mk b/sdk/deb.mk
deleted file mode 100644 (file)
index 8a0f4e1..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-DIST_PKGS = \
-argeo-tp-base \
-argeo-tp-equinox \
-argeo-tp-jetty \
-argeo-tp-rap \
-argeo-tp-jcr \
-argeo-tp-sdk \
-
-DEB_DIRS = $(DIST_PKGS:%=$(SDK_BUILD_BASE)/build/deb/%)
-DEB_PKGS = $(DIST_PKGS:%=$(SDK_BUILD_BASE)/deb/%.deb)
-
-
-deb: $(DEB_PKGS)
-       cd $(SDK_BUILD_BASE)/deb && dpkg-scanpackages . | gzip > Packages.gz
-
-$(SDK_BUILD_BASE)/deb/%.deb : $(SDK_BUILD_BASE)/build/deb/%/DEBIAN/control
-       echo Build $@
-
-$(SDK_BUILD_BASE)/build/deb/%/DEBIAN/control : $(SDK_SRC_BASE)/sdk/deb/%.control prepare-deb
-       cp $< $@
-       dpkg-deb --build --root-owner-group $(dir $@)/.. $(SDK_BUILD_BASE)/deb
-
-prepare-deb: 
-       mkdir -p $(foreach deb_dir, $(DEB_DIRS), $(deb_dir)/DEBIAN)
-       mkdir -p $(foreach deb_dir, $(DEB_DIRS), $(deb_dir)/usr/share/a2)
-       rsync -av $(SDK_BUILD_BASE)/a2/org.argeo.tp $(SDK_BUILD_BASE)/build/deb/argeo-tp-base/usr/share/a2
-       rsync -av $(SDK_BUILD_BASE)/a2/org.argeo.tp.apache $(SDK_BUILD_BASE)/build/deb/argeo-tp-base/usr/share/a2
-       rsync -av $(SDK_BUILD_BASE)/a2/org.argeo.tp.eclipse.equinox $(SDK_BUILD_BASE)/build/deb/argeo-tp-equinox/usr/share/a2
-       rsync -av $(SDK_BUILD_BASE)/a2/org.argeo.tp.jetty $(SDK_BUILD_BASE)/build/deb/argeo-tp-jetty/usr/share/a2
-       rsync -av $(SDK_BUILD_BASE)/a2/org.argeo.tp.eclipse.rap $(SDK_BUILD_BASE)/build/deb/argeo-tp-rap/usr/share/a2
-       rsync -av $(SDK_BUILD_BASE)/a2/org.argeo.tp.jcr $(SDK_BUILD_BASE)/build/deb/argeo-tp-jcr/usr/share/a2
-       rsync -av $(SDK_BUILD_BASE)/a2/org.argeo.tp.sdk $(SDK_BUILD_BASE)/build/deb/argeo-tp-sdk/usr/share/a2
-       
-       
diff --git a/sdk/ecj.args b/sdk/ecj.args
deleted file mode 100644 (file)
index 852a33d..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
--source 17
--target 11
--nowarn
--time 
\ No newline at end of file
diff --git a/sdk/excludes.txt b/sdk/excludes.txt
deleted file mode 100644 (file)
index 3f5b4e5..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-src
-target
-.*
-bnd.bnd
-pom.xml
-build.properties
-bin
-generated
\ No newline at end of file
diff --git a/sdk/osgi.mk b/sdk/osgi.mk
deleted file mode 100644 (file)
index bf578ef..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-#
-# GENERIC
-#
-JVM := $(JAVA_HOME)/bin/java
-JAVADOC := $(JAVA_HOME)/bin/javadoc
-ECJ_JAR := $(A2_BASE)/org.argeo.tp.sdk/org.eclipse.jdt.core.compiler.batch.3.28.jar
-BND_TOOL := /usr/bin/bnd
-
-BUILD_BASE = $(SDK_BUILD_BASE)/$(A2_CATEGORY)
-
-WORKSPACE_BNDS := $(shell cd $(SDK_SRC_BASE) && find cnf -name '*.bnd')
-BUILD_WORKSPACE_BNDS := $(WORKSPACE_BNDS:%=$(BUILD_BASE)/%)
-
-A2_JARS = $(foreach category, $(DEP_CATEGORIES), $(shell find $(A2_BASE)/$(category) -name '*.jar'))
-A2_CLASSPATH = $(subst $(space),$(pathsep),$(strip $(A2_JARS)))
-
-A2_BUNDLES = $(foreach bundle, $(BUNDLES),$(A2_OUTPUT)/$(A2_CATEGORY)/$(shell basename $(bundle)).$(MAJOR).$(MINOR).jar)
-
-JAVA_SRCS = $(foreach bundle, $(BUNDLES), $(shell find $(bundle) -name '*.java'))
-BNDS = $(foreach bundle, $(BUNDLES), $(BUILD_BASE)/$(shell basename $(bundle))/bnd.bnd)
-ECJ_SRCS = $(foreach bundle, $(BUNDLES), $(bundle)/src[-d $(BUILD_BASE)/$(shell basename $(bundle))/bin])
-
-JAVADOC_SRCS = $(foreach bundle, $(JAVADOC_BUNDLES),$(bundle)/src)
-
-osgi: $(BUILD_WORKSPACE_BNDS) $(A2_BUNDLES)
-
-javadoc: $(BUILD_BASE)/java-compiled
-       $(JAVADOC) -d $(BUILD_BASE)/api --source-path $(subst $(space),$(pathsep),$(strip $(JAVADOC_SRCS))) -subpackages $(JAVADOC_PACKAGES)
-
-
-# SDK level
-$(BUILD_BASE)/cnf/%.bnd: cnf/%.bnd
-       mkdir -p $(dir $@)
-       cp $< $@
-       
-$(A2_OUTPUT)/$(A2_CATEGORY)/%.$(MAJOR).$(MINOR).jar : $(BUILD_BASE)/%.jar
-       mkdir -p $(dir $@)
-       cp $< $@
-
-$(BUILD_BASE)/%.jar: $(BUILD_BASE)/jars-built
-       mv $(basename $@)/generated/*.jar $(basename $@).jar
-
-# Build level
-$(BUILD_BASE)/jars-built: $(BNDS)
-       cd $(BUILD_BASE) && $(BND_TOOL) build
-       touch $@
-
-$(BUILD_BASE)/%/bnd.bnd : %/bnd.bnd $(BUILD_BASE)/java-compiled 
-       mkdir -p $(dir $@)bin
-       rsync -r --exclude "*.java" $(dir  $<)src/ $(dir $@)bin
-       rsync -r --exclude-from $(SDK_SRC_BASE)/sdk/excludes.txt $(dir  $<) $(dir $@)bin
-       if [ -d "$(dir  $<)OSGI-INF" ]; then rsync -r $(dir  $<)OSGI-INF/ $(dir $@)/OSGI-INF; fi
-       cp $< $@
-       echo "\n-sourcepath:$(SDK_SRC_BASE)/$(dir  $<)src\n" >> $@
-
-$(BUILD_BASE)/java-compiled : $(JAVA_SRCS)
-       $(JVM) -jar $(ECJ_JAR) @$(SDK_SRC_BASE)/sdk/ecj.args -cp $(A2_CLASSPATH) $(ECJ_SRCS)
-       touch $@
-
-# Local manifests
-manifests : osgi
-       $(foreach bundle, $(BUNDLES), cp -v $(BUILD_BASE)/$(shell basename $(bundle))/META-INF/MANIFEST.MF  $(bundle)/META-INF/MANIFEST.MF;)
-
-null  :=
-space := $(null) #
-pathsep := :