1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
3 NAMEBASE= libsparkcrypto
8 SDESC[standard]= Cryptographic library implemented in SPARK
9 HOMEPAGE= https://github.com/Componolit/libsparkcrypto
10 CONTACT= John_Marino[draco@marino.st]
13 SITES[main]= GITHUB/Componolit:libsparkcrypto:5901d2c
14 DISTFILE[1]= generated:main
16 SPKGS[standard]= single
18 OPTIONS_AVAILABLE= none
19 OPTIONS_STANDARD= none
21 BROKEN[aarch64]= fails to compile: unsupported architecture: aarch64
25 LICENSE= BSD3CLAUSE:single
26 LICENSE_FILE= BSD3CLAUSE:{{WRKSRC}}/README.rst
29 BUILD_TARGET= all build
30 MAKE_ENV= SPARKARCH={{ARCH_STANDARD:S/i386/i686/}}
31 SPARK_DIR={{WRKSRC}}/src/spark
37 INSTALL_REQ_TOOLCHAIN= yes
40 #ports passed unwanted ARCH definition to Makefile
41 ${REINPLACE_CMD} -e 's|ARCH|SPARKARCH|g' ${WRKSRC}/Makefile
43 [FILE:624:descriptions/desc.single]
44 libsparkcrypto is a formally verified implementation of several widely used
45 symmetric cryptographic algorithms using the SPARK programming language and
46 toolset. For the complete library proofs of the absence of run-time errors
47 like type range violations, division by zero and numerical overflows are
48 available. Some of its subprograms include proofs of partial correctness.
50 The distribution contains test cases for all implemented algorithms and a
51 benchmark to compare its performance with the OpenSSL library. The achieved
52 speed has been found to be very close to the optimized C and Assembler
53 implementations of OpenSSL.
57 3a743518fbba51c50e03c422534feb44a86091a9d616cd6e3f0d59ae0cf5ffed 8517333 Componolit-libsparkcrypto-5901d2c.tar.gz
60 [FILE:3796:manifests/plist.single]
61 include/libsparkcrypto/adainclude/
62 lsc-aes_generic-cbc.adb
64 lsc-internal-aes-cbc.adb
66 lsc-internal-bignum.adb
67 lsc-internal-byteorder32.adb
68 lsc-internal-byteorder64.adb
69 lsc-internal-byteswap32.adb
70 lsc-internal-byteswap64.adb
71 lsc-internal-convert_hash.adb
72 lsc-internal-convert_hmac.adb
73 lsc-internal-debug.ads
75 lsc-internal-ec_signature.adb
76 lsc-internal-hmac_ripemd160.adb
77 lsc-internal-hmac_sha1.adb
78 lsc-internal-hmac_sha256.adb
79 lsc-internal-hmac_sha384.adb
80 lsc-internal-hmac_sha512.adb
81 lsc-internal-ops32.adb
82 lsc-internal-ops64.adb
83 lsc-internal-pad32.adb
84 lsc-internal-pad64.adb
85 lsc-internal-ripemd160.adb
87 lsc-internal-sha256.adb
88 lsc-internal-sha512.adb
89 lsc-internal-types.adb
91 lsc-ripemd160-hmac_generic.adb
92 lsc-ripemd160_generic.adb
93 lsc-sha1-hmac_generic.adb
95 lsc-sha2-hmac_generic.adb
97 include/libsparkcrypto/adainclude/textio/lsc-internal-io.adb
98 include/libsparkcrypto/sharedinclude/
101 lsc-aes_generic-cbc.ads
103 lsc-internal-aes-cbc.ads
104 lsc-internal-aes-print.ads
105 lsc-internal-aes-tables.ads
107 lsc-internal-bignum.ads
108 lsc-internal-byteorder32.ads
109 lsc-internal-byteorder64.ads
110 lsc-internal-byteswap32.ads
111 lsc-internal-byteswap64.ads
112 lsc-internal-convert.ads
113 lsc-internal-convert_hash.ads
114 lsc-internal-convert_hmac.ads
115 lsc-internal-debug.ads
117 lsc-internal-ec_signature.ads
118 lsc-internal-hmac_ripemd160.ads
119 lsc-internal-hmac_sha1.ads
120 lsc-internal-hmac_sha256.ads
121 lsc-internal-hmac_sha384.ads
122 lsc-internal-hmac_sha512.ads
124 lsc-internal-math_int.ads
125 lsc-internal-ops32.ads
126 lsc-internal-ops64.ads
127 lsc-internal-pad32.ads
128 lsc-internal-pad64.ads
129 lsc-internal-ripemd160-print.ads
130 lsc-internal-ripemd160.ads
131 lsc-internal-sha1.ads
132 lsc-internal-sha256-tables.ads
133 lsc-internal-sha256.ads
134 lsc-internal-sha512-tables.ads
135 lsc-internal-sha512.ads
136 lsc-internal-types.ads
139 lsc-ripemd160-hmac.ads
140 lsc-ripemd160-hmac_generic.ads
142 lsc-ripemd160_generic.ads
144 lsc-sha1-hmac_generic.ads
148 lsc-sha2-hmac_generic.ads
157 lsc-aes_generic-cbc.ali
159 lsc-internal-aes-cbc.ali
160 lsc-internal-aes-print.ali
161 lsc-internal-aes-tables.ali
163 lsc-internal-bignum.ali
164 lsc-internal-byteorder32.ali
165 lsc-internal-byteorder64.ali
166 lsc-internal-byteswap32.ali
167 lsc-internal-byteswap64.ali
168 lsc-internal-convert.ali
169 lsc-internal-convert_hash.ali
170 lsc-internal-convert_hmac.ali
171 lsc-internal-debug.ali
173 lsc-internal-ec_signature.ali
174 lsc-internal-hmac_ripemd160.ali
175 lsc-internal-hmac_sha1.ali
176 lsc-internal-hmac_sha256.ali
177 lsc-internal-hmac_sha384.ali
178 lsc-internal-hmac_sha512.ali
180 lsc-internal-math_int.ali
181 lsc-internal-ops32.ali
182 lsc-internal-ops64.ali
183 lsc-internal-pad32.ali
184 lsc-internal-pad64.ali
185 lsc-internal-ripemd160-print.ali
186 lsc-internal-ripemd160.ali
187 lsc-internal-sha1.ali
188 lsc-internal-sha256-tables.ali
189 lsc-internal-sha256.ali
190 lsc-internal-sha512-tables.ali
191 lsc-internal-sha512.ali
192 lsc-internal-types.ali
195 lsc-ripemd160-hmac.ali
196 lsc-ripemd160-hmac_generic.ali
198 lsc-ripemd160_generic.ali
200 lsc-sha1-hmac_generic.ali
204 lsc-sha2-hmac_generic.ali
209 share/gpr/libsparkcrypto.gpr
212 [FILE:3531:patches/patch-Makefile]
213 --- Makefile.orig 2019-09-24 19:43:33 UTC
215 @@ -4,7 +4,6 @@ UNAME_M := $(shell uname -m)
219 -DESTDIR ?= /usr/local
223 @@ -15,7 +14,7 @@ SHARED_DIRS = src/shared/$(ENDIANESS) sr
224 ARCH_FILES = $(wildcard src/ada/$(ARCH)/*.ad?)
225 ADT_FILES = $(addprefix $(OUTPUT_DIR)/tree/,$(notdir $(patsubst %.ads,%.adt,$(wildcard src/shared/generic/*.ads))))
227 -ALL_GOALS = install_local
229 INSTALL_DEPS = install_files \
232 @@ -47,7 +46,7 @@ ifneq ($(SHARED),)
237 + LIBTYPE = static-pic
241 @@ -124,22 +123,22 @@ $(OUTPUT_DIR)/proof/gnatprove.log:
242 install: $(INSTALL_DEPS)
245 - $(foreach RTS,$(RUNTIME),install -d -m 755 $(DESTDIR)/adalib/$(RTS);)
246 - install -d -m 755 $(DESTDIR)/adainclude $(DESTDIR)/sharedinclude
247 - $(foreach RTS,$(RUNTIME),install -p -m 755 $(OUTPUT_DIR)/build/adalib/$(RTS)/libsparkcrypto$(LIBPREFIX) $(DESTDIR)/adalib/$(RTS)/libsparkcrypto$(LIBPREFIX);)
248 - install -p -m 644 build/libsparkcrypto.gpr $(DESTDIR)/libsparkcrypto.gpr
249 - install -p -m 644 src/shared/generic/*.ads $(DESTDIR)/sharedinclude/
250 - install -p -m 644 src/ada/generic/*.ad? $(DESTDIR)/adainclude/
251 - $(foreach IO,$(subst native,textio,$(subst zfp,nullio,$(RUNTIME))),install -d -m 755 $(DESTDIR)/adainclude/$(IO); install -p -m 644 src/ada/$(IO)/*.ad? $(DESTDIR)/adainclude/$(IO);)
252 - install -p -m 644 src/shared/$(ENDIANESS)/*.adb $(DESTDIR)/adainclude/
253 - install -p -m 644 src/shared/generic/*.adb $(DESTDIR)/adainclude/
255 + install -d -m 755 $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude $(DESTDIR)$(PREFIX)/include/libsparkcrypto/sharedinclude $(DESTDIR)$(PREFIX)/share/gpr $(DESTDIR)$(PREFIX)/lib/libsparkcrypto
256 + $(foreach RTS,$(RUNTIME),install -p -m 755 $(OUTPUT_DIR)/build/adalib/$(RTS)/libsparkcrypto$(LIBPREFIX) $(DESTDIR)$(PREFIX)/lib/libsparkcrypto/libsparkcrypto$(LIBPREFIX);)
257 + install -p -m 644 build/libsparkcrypto.gpr $(DESTDIR)$(PREFIX)/share/gpr/libsparkcrypto.gpr
258 + install -p -m 644 src/shared/generic/*.ads $(DESTDIR)$(PREFIX)/include/libsparkcrypto/sharedinclude/
259 + install -p -m 644 src/ada/generic/*.ad? $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/
260 + $(foreach IO,$(subst native,textio,$(subst zfp,nullio,$(RUNTIME))),install -d -m 755 $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/$(IO); install -p -m 644 src/ada/$(IO)/*.ad? $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/$(IO);)
261 + install -p -m 644 src/shared/$(ENDIANESS)/*.adb $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/
262 + install -p -m 644 src/shared/generic/*.adb $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/
263 ifneq ($(strip $(ARCH_FILES)),)
264 - install -p -m 644 $(ARCH_FILES) $(DESTDIR)/adainclude/
265 + install -p -m 644 $(ARCH_FILES) $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/
267 - $(foreach RTS,$(RUNTIME),install -p -m 444 $(OUTPUT_DIR)/build/adalib/$(RTS)/*.ali $(DESTDIR)/adalib/$(RTS);)
268 + $(foreach RTS,$(RUNTIME),install -p -m 444 $(OUTPUT_DIR)/build/adalib/$(RTS)/*.ali $(DESTDIR)$(PREFIX)/lib/libsparkcrypto/)
270 install_spark: install_files $(OUTPUT_DIR)/proof/gnatprove.log
271 - install -D -p -m 444 $(OUTPUT_DIR)/proof/gnatprove.log $(DESTDIR)/gnatprove.log
272 + install -D -p -m 444 $(OUTPUT_DIR)/proof/gnatprove.log $(DESTDIR)$(PREFIX)/gnatprove.log
274 install_local: DESTDIR = $(OUTPUT_DIR)/libsparkcrypto
275 install_local: install
278 [FILE:885:patches/patch-build_build__libsparkcrypto.gpr]
279 --- build/build_libsparkcrypto.gpr.orig 2019-09-24 19:43:33 UTC
280 +++ build/build_libsparkcrypto.gpr
282 project Build_Libsparkcrypto
284 type Mode_Type is ("debug", "release", "stack");
285 - type Lib_Type is ("static", "dynamic");
286 + type Lib_Type is ("static", "dynamic", "static-pic");
287 type Arch_Type is ("x86_64", "i686", "generic_be");
288 type Endianess_Type is ("little_endian", "big_endian");
289 type IO_Type is ("textio", "nullio");
293 for Default_Switches ("Ada") use Style_Switches & Compiler_Switches &
294 - ("-O" & Optimization, "-ffunction-sections", "-fdata-sections", "-gnatwa", "-gnatwe");
295 + ("-O" & Optimization, "-ffunction-sections", "-fdata-sections", "-gnatwa");
296 for Local_Configuration_Pragmas use Pragmas;
301 [FILE:949:patches/patch-build_libsparkcrypto.gpr]
302 --- build/libsparkcrypto.gpr.orig 2019-09-24 19:43:33 UTC
303 +++ build/libsparkcrypto.gpr
304 @@ -2,7 +2,7 @@ project Libsparkcrypto
306 type IO_Type is ("textio", "nullio");
307 type Runtime_Type is ("native", "zfp");
308 - type Lib_Type is ("static", "dynamic");
309 + type Lib_Type is ("static", "dynamic", "static-pic");
311 IO : IO_Type := "textio";
312 Runtime : Runtime_Type := external ("RTS", "native");
313 @@ -17,8 +17,10 @@ is
317 - for Source_Dirs use ("adainclude", "adainclude/" & IO, "sharedinclude");
318 - for Library_Dir use "adalib/" & Runtime;
319 + for Source_Dirs use ("../../include/libsparkcryto/adainclude",
320 + "../../include/libsparkcryto/adainclude/" & IO,
321 + "../../include/libsparkcryto/sharedinclude");
322 + for Library_Dir use "../libsparkcrypto";
323 for Library_Kind use Linking;
324 for Library_Name use "sparkcrypto";
325 for Externally_Built use "true";