Improve JNI build
[gpl/argeo-slc.git] / Makefile
index ecb0968fcf03f986637a9bbc4444b91c3aa5dede..9b71e7c01719af5e65635c7d99594849740f2541 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,40 +1,53 @@
 include sdk.mk
-.PHONY: clean all osgi
+.PHONY: clean all osgi jni
 
-all: osgi
+all: osgi jni
+       $(MAKE) -f Makefile-rcp.mk all
+
+jni:
+       $(MAKE) -C jni
 
 A2_CATEGORY = org.argeo.slc
 
 BUNDLES = \
 org.argeo.slc.api \
-org.argeo.slc.factory \
 org.argeo.slc.runtime \
-cms/org.argeo.slc.cms \
+org.argeo.slc.cms \
+org.argeo.slc.repo \
+org.argeo.slc.rpmfactory \
+org.argeo.slc.jcr \
+lib/linux/org.argeo.slc.systemd \
+swt/org.argeo.tool.swt \
+swt/org.argeo.cms.e4 \
+swt/org.argeo.tool.devops.e4 \
+swt/rap/org.argeo.cms.e4.rap \
+swt/rap/org.argeo.tool.rap.cli \
 swt/rap/org.argeo.tool.server \
 
-VPATH = .:cms:swt/rap
-
-clean:
-       rm -rf $(BUILD_BASE)
-
-A2_OUTPUT = $(SDK_BUILD_BASE)/a2
-A2_BASE = $(A2_OUTPUT)
-
 DEP_CATEGORIES = \
+crypto/fips/org.argeo.tp.crypto \
+log/syslogger/org.argeo.tp \
 org.argeo.tp \
+org.argeo.tp.build \
 org.argeo.tp.sdk \
-org.argeo.tp.apache \
-org.argeo.tp.jetty \
+org.argeo.tp.httpd \
+org.argeo.tp.utils \
+org.argeo.tp.jcr \
 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 \
-org.argeo.tp.formats \
-org.argeo.tp.gis \
 org.argeo.cms \
+org.argeo.cms.jcr \
+swt/org.argeo.cms \
+swt/org.argeo.cms.jcr \
 swt/rap/org.argeo.cms \
 
+clean:
+       rm -rf $(BUILD_BASE)
+       $(MAKE) -C jni clean
+       $(MAKE) -f Makefile-rcp.mk clean
+
 GRAALVM_HOME = /opt/graalvm-ce
 A2_BUNDLES_CLASSPATH = $(subst $(space),$(pathsep),$(strip $(A2_BUNDLES)))
 
@@ -46,14 +59,15 @@ tool-server: osgi graalvm-custom
        mkdir -p $(A2_OUTPUT)/libexec/$(A2_CATEGORY)
        cd $(A2_OUTPUT)/libexec/$(A2_CATEGORY) && $(GRAALVM_HOME)/bin/native-image \
                -cp $(A2_CLASSPATH):$(A2_BUNDLES_CLASSPATH):$(SDK_BUILD_BASE)/$(A2_CATEGORY)/graalvm/bin \
-               --features=org.argeo.slc.graalvm.feature.ArgeoToolFeature \
                --enable-url-protocols=http,https \
-               -H:AdditionalSecurityProviders=sun.security.jgss.SunProvider,org.bouncycastle.jce.provider.BouncyCastleProvider,net.i2p.crypto.eddsa.EdDSASecurityProvider \
+               -H:AdditionalSecurityProviders=sun.security.jgss.SunProvider \
                --initialize-at-build-time=org.argeo.init.logging.ThinLogging,org.slf4j.LoggerFactory \
                --no-fallback \
                -Dargeo.logging.synchronous=true \
                 org.argeo.tool.server.ArgeoServer \
                 argeo
 
+native-deps-debian:
+       sudo apt install uuid-dev
 
 include  $(SDK_SRC_BASE)/sdk/argeo-build/osgi.mk
\ No newline at end of file