Multi-referentials bind working
[lgpl/argeo-commons.git] / Makefile
index f19a0dc4b61f068b55f7d516f1eb2f53264e8a2b..b04cee3063a22ef02d4bff17b7f9006269d61ae8 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,20 @@
 include sdk.mk
-.PHONY: clean all osgi jni
+.PHONY: clean all osgi jni move-swt move-rap
 
-all: osgi jni
+all: osgi jni move-rap
+       $(MAKE) -f Makefile-rcp.mk
+
+move-rap: move-swt
+       mkdir -p $(A2_OUTPUT)/swt/rap/$(A2_CATEGORY)
+       mv -v $(A2_OUTPUT)/$(A2_CATEGORY)/*.rap.$(MAJOR).$(MINOR).jar $(A2_OUTPUT)/swt/rap/$(A2_CATEGORY)
+       mv -v $(A2_OUTPUT)/$(A2_CATEGORY)/*.rap.cli.$(MAJOR).$(MINOR).jar $(A2_OUTPUT)/swt/rap/$(A2_CATEGORY)
+       touch $(BUILD_BASE)/*.rap/bnd.bnd
+
+move-swt: osgi
+       mkdir -p $(A2_OUTPUT)/swt/$(A2_CATEGORY)
+       mv -v $(A2_OUTPUT)/$(A2_CATEGORY)/org.argeo.swt.minidesktop.$(MAJOR).$(MINOR).jar $(A2_OUTPUT)/swt/$(A2_CATEGORY)
+       mv -v $(A2_OUTPUT)/$(A2_CATEGORY)/org.argeo.cms.swt.$(MAJOR).$(MINOR).jar $(A2_OUTPUT)/swt/$(A2_CATEGORY)
+       mv -v $(A2_OUTPUT)/$(A2_CATEGORY)/org.argeo.cms.e4.$(MAJOR).$(MINOR).jar $(A2_OUTPUT)/swt/$(A2_CATEGORY)
 
 A2_CATEGORY = org.argeo.cms
 
@@ -10,17 +23,25 @@ org.argeo.init \
 org.argeo.util \
 org.argeo.api.uuid \
 org.argeo.api.acr \
+org.argeo.api.cli \
 org.argeo.api.cms \
 org.argeo.cms \
-org.argeo.cms.pgsql \
-eclipse/org.argeo.cms.servlet \
-eclipse/org.argeo.cms.swt \
-eclipse/org.argeo.cms.e4 \
-rap/org.argeo.cms.ui.rap \
-rap/org.argeo.swt.specific.rap \
-rap/org.argeo.cms.e4.rap \
+org.argeo.cms.ux \
+org.argeo.cms.ee \
+org.argeo.cms.lib.jetty \
+org.argeo.cms.lib.equinox \
+org.argeo.cms.lib.sshd \
+org.argeo.cms.lib.pgsql \
+org.argeo.cms.cli \
+swt/org.argeo.swt.minidesktop \
+swt/org.argeo.cms.swt \
+swt/org.argeo.cms.e4 \
+swt/rap/org.argeo.swt.specific.rap \
+swt/rap/org.argeo.cms.swt.rap \
+swt/rap/org.argeo.cms.swt.rap.cli \
+swt/rap/org.argeo.cms.e4.rap \
 jcr/org.argeo.cms.jcr \
-jcr/org.argeo.cms.ui \
+jcr/org.argeo.cms.jcr.ui \
 
 JAVADOC_BUNDLES =  \
 org.argeo.api.uuid \
@@ -35,9 +56,17 @@ org.argeo.api.cms
 A2_OUTPUT = $(SDK_BUILD_BASE)/a2
 A2_BASE = $(A2_OUTPUT)
 
-VPATH = .:eclipse:rap:jcr
+VPATH = .:jcr:swt:swt/rap
 
-DEP_CATEGORIES = org.argeo.tp org.argeo.tp.apache org.argeo.tp.jetty org.argeo.tp.eclipse.equinox org.argeo.tp.eclipse.rap org.argeo.tp.jcr
+DEP_CATEGORIES = \
+org.argeo.tp \
+org.argeo.tp.apache \
+org.argeo.tp.jetty \
+osgi/api/org.argeo.tp.osgi \
+osgi/equinox/org.argeo.tp.eclipse \
+swt/rap/org.argeo.tp.swt \
+swt/rap/org.argeo.tp.swt.workbench \
+org.argeo.tp.jcr
 
 jni:
        $(MAKE) -C jni
@@ -45,5 +74,22 @@ jni:
 clean:
        rm -rf $(BUILD_BASE)
        $(MAKE) -C jni clean
+       $(MAKE) -f Makefile-rcp.mk clean
+
+A2_BUNDLES_CLASSPATH = $(subst $(space),$(pathsep),$(strip $(A2_BUNDLES)))
+
+native-image:
+       mkdir -p $(A2_OUTPUT)/libexec/$(A2_CATEGORY)
+#      cd $(A2_OUTPUT)/libexec/$(A2_CATEGORY) && /opt/graalvm-ce/bin/native-image \
+               -cp $(A2_CLASSPATH):$(A2_BUNDLES_CLASSPATH) org.argeo.eclipse.ui.jetty.CmsRapCli \
+               --enable-url-protocols=http,https \
+               -H:AdditionalSecurityProviders=sun.security.jgss.SunProvider,org.bouncycastle.jce.provider.BouncyCastleProvider,net.i2p.crypto.eddsa.EdDSASecurityProvider \
+               --initialize-at-build-time=org.argeo.init.logging.ThinLogging,org.slf4j.LoggerFactory \
+               --no-fallback 
+       cd $(A2_OUTPUT)/libexec/$(A2_CATEGORY) && /opt/graalvm-ce/bin/native-image \
+               -cp $(A2_CLASSPATH):$(A2_BUNDLES_CLASSPATH) org.argeo.cms.ux.cli.FileSync \
+               --initialize-at-build-time=org.argeo.init.logging.ThinLogging,org.slf4j.LoggerFactory \
+               --no-fallback 
+
 
-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