Integrate libsparkcrypto as a submodule

This commit is contained in:
Alexander Senier 2018-07-03 12:47:20 +02:00
parent d431b075d2
commit 2a6874a91a
5 changed files with 27 additions and 10 deletions

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "contrib/libsparkcrypto"]
path = contrib/libsparkcrypto
url = https://github.com/Componolit/libsparkcrypto.git

View File

@ -1,26 +1,36 @@
GNATPROVE_OPTS = --prover=z3,cvc4,altergo -j0 --codepeer=off --output-header --no-inlining --proof=progressive
COMMON_OPTS = -Xlibtype=dynamic
all:
EXAMPLES = b64 json area jwt authproxy
all: proj.gpr
@time gnatprove $(COMMON_OPTS) -Pproj $(GNATPROVE_OPTS) | tee proof.log.tmp
@egrep -q '\(medium\|warning\|error\):' proof.log.tmp
@mv proof.log.tmp proof.log
clean:
@make -C contrib/libsparkcrypto clean
@gprclean $(COMMON_OPTS) -Pproj
@gnatprove $(COMMON_OPTS) -Pproj --clean
@rm -rf obj adalib
test:
test: proj.gpr
@gprbuild $(COMMON_OPTS) -P tests/test.gpr -gnata -p
@obj/test
examples::
examples:: $(addprefix obj/,$(EXAMPLES))
$(addprefix obj/,$(EXAMPLES)): obj/lsc/libsparkcrypto.gpr examples/*.ad?
@gprbuild $(COMMON_OPTS) -P examples/examples.gpr
@gnatprove $(COMMON_OPTS) -P examples/examples.gpr $(GNATPROVE_OPTS)
@obj/b64
authproxy:
@gprbuild $(COMMON_OPTS) -P doc/authproxy.gpr
proj.gpr: obj/lsc/libsparkcrypto.gpr
contrib/libsparkcrypto/Makefile:
@git submodule init
@git submodule update
obj/lsc/libsparkcrypto.gpr: contrib/libsparkcrypto/Makefile
@make -C contrib/libsparkcrypto/ NO_SPARK=1 NO_TESTS=1 DESTDIR=$(PWD)/obj/lsc install
.PHONY: test

@ -0,0 +1 @@
Subproject commit a0c052bbb248fb5567342d2d77de6f07162c0eab

View File

@ -1,4 +1,4 @@
with "libsparkcrypto";
with "../obj/lsc/libsparkcrypto";
project Examples is

View File

@ -1,8 +1,11 @@
with "libsparkcrypto";
project Proj is
for Source_Dirs use ("src");
for Source_Dirs use
(
"src",
"contrib/libsparkcrypto/src/ada/generic",
"contrib/libsparkcrypto/src/shared/generic"
);
for Object_Dir use "obj";
for Library_Name use "base64";