# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= libsparkcrypto VERSION= 0.1.1 REVISION= 2 KEYWORDS= security ada VARIANTS= standard SDESC[standard]= Cryptographic library implemented in SPARK HOMEPAGE= http://senier.net/libsparkcrypto/ CONTACT= John_Marino[draco@marino.st] DOWNLOAD_GROUPS= main SITES[main]= http://senier.net/libsparkcrypto/ DISTFILE[1]= libsparkcrypto-0.1.1.tgz:main DF_INDEX= 1 SPKGS[standard]= complete primary docs OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BROKEN[aarch64]= fails to compile: unsupported architecture: aarch64 BUILD_DEPENDS= AdaBrowse:primary:standard USES= dos2unix gmake gprbuild LICENSE= BSD3CLAUSE:primary LICENSE_FILE= BSD3CLAUSE:{{WKRSRC}}/README LICENSE_SCHEME= solo FPC_EQUIVALENT= security/libsparkcrypto BUILD_TARGET= all build MAKE_ENV= SPARKARCH={{ARCH_STANDARD:S/i386/i686/}} SPARK_DIR={{WRKSRC}}/src/spark MODE=release RUNTIME=native NO_TESTS=true NO_PROOF=true INSTALL_REQ_TOOLCHAIN= yes post-patch: #ports passed unwanted ARCH definition to Makefile ${REINPLACE_CMD} -e 's|ARCH|SPARKARCH|g' ${WRKSRC}/Makefile [FILE:624:descriptions/desc.primary] libsparkcrypto is a formally verified implementation of several widely used symmetric cryptographic algorithms using the SPARK programming language and toolset. For the complete library proofs of the absence of run-time errors like type range violations, division by zero and numerical overflows are available. Some of its subprograms include proofs of partial correctness. The distribution contains test cases for all implemented algorithms and a benchmark to compare its performance with the OpenSSL library. The achieved speed has been found to be very close to the optimized C and Assembler implementations of OpenSSL. [FILE:103:distinfo] 47582d6910b8c5bb46df51d0e76c27e6fa2b13e8ab73fb4ae0f1d9f7cbd7aa6a 101491 libsparkcrypto-0.1.1.tgz [FILE:1603:manifests/plist.primary] include/libsparkcrypto/adainclude/ lsc-aes-print.adb lsc-aes-print.ads lsc-byteswap32.adb lsc-byteswap64.adb lsc-debug.ads lsc-io.adb lsc-ripemd160-print.adb lsc-ripemd160-print.ads lsc-test.adb lsc-types.adb include/libsparkcrypto/sharedinclude/ lsc-aes-cbc.adb lsc-aes-cbc.ads lsc-aes-print.ads lsc-aes-tables.ads lsc-aes.adb lsc-aes.ads lsc-byteorder32.adb lsc-byteorder32.ads lsc-byteorder64.adb lsc-byteorder64.ads lsc-byteswap32.adb lsc-byteswap32.ads lsc-byteswap64.adb lsc-byteswap64.ads lsc-debug.ads lsc-hmac_ripemd160.adb lsc-hmac_ripemd160.ads lsc-hmac_sha256.adb lsc-hmac_sha256.ads lsc-hmac_sha384.adb lsc-hmac_sha384.ads lsc-hmac_sha512.adb lsc-hmac_sha512.ads lsc-io.ads lsc-ops32.adb lsc-ops32.ads lsc-ops64.adb lsc-ops64.ads lsc-pad32.adb lsc-pad32.ads lsc-pad64.adb lsc-pad64.ads lsc-ripemd160-print.ads lsc-ripemd160.adb lsc-ripemd160.ads lsc-sha256-tables.ads lsc-sha256.adb lsc-sha256.ads lsc-sha512-tables.ads lsc-sha512.adb lsc-sha512.ads lsc-test.ads lsc-types.ads lsc.ads lib/gnat/libsparkcrypto.gpr lib/libsparkcrypto/ libsparkcrypto.a lsc-aes-cbc.ali lsc-aes-print.ali lsc-aes-tables.ali lsc-aes.ali lsc-byteorder32.ali lsc-byteorder64.ali lsc-byteswap32.ali lsc-byteswap64.ali lsc-debug.ali lsc-hmac_ripemd160.ali lsc-hmac_sha256.ali lsc-hmac_sha384.ali lsc-hmac_sha512.ali lsc-io.ali lsc-ops32.ali lsc-ops64.ali lsc-pad32.ali lsc-pad64.ali lsc-ripemd160-print.ali lsc-ripemd160.ali lsc-sha256-tables.ali lsc-sha256.ali lsc-sha512-tables.ali lsc-sha512.ali lsc-test.ali lsc-types.ali lsc.ali [FILE:602:manifests/plist.docs] share/doc/libsparkcrypto/ apidoc.css libsparkcrypto.css lsc-aes-cbc.html lsc-aes-print.html lsc-aes-tables.html lsc-aes.html lsc-byteorder32.html lsc-byteorder64.html lsc-byteswap32.html lsc-byteswap64.html lsc-debug.html lsc-hmac_ripemd160.html lsc-hmac_sha256.html lsc-hmac_sha384.html lsc-hmac_sha512.html lsc-io.html lsc-ops32.html lsc-ops64.html lsc-pad32.html lsc-pad64.html lsc-ripemd160-print.html lsc-ripemd160.html lsc-sha256-tables.html lsc-sha256.html lsc-sha512-tables.html lsc-sha512.html lsc-test.html lsc-types.html lsc.html lsc_logo.png subprograms.html [FILE:4156:patches/patch-Makefile] --- Makefile.orig 2013-07-20 13:54:32.000000000 +0000 +++ Makefile @@ -5,7 +5,6 @@ UNAME_M := $(shell uname -m) ARCH ?= $(UNAME_M) RUNTIME ?= native TESTS ?= test_aes test_hmac test_ripemd160 test_sha2 test_shadow benchmark -DESTDIR ?= /usr/local TARGET_CFG ?= $(OUTPUT_DIR)/target.cfg VERSION ?= 0.1.1 @@ -33,7 +32,7 @@ SHARED_DIRS = src/shared/$(ENDIANESS) sr ARCH_FILES = $(wildcard src/ada/$(ARCH)/*.ad?) ADT_FILES = $(addprefix $(OUTPUT_DIR)/tree/,$(notdir $(patsubst %.ads,%.adt,$(wildcard src/shared/generic/*.ads)))) -ALL_GOALS = install_local +ALL_GOALS = INSTALL_DEPS = install_files # SPARK_DIR must be set @@ -78,6 +77,7 @@ endif # Feature: NO_APIDOC ifeq ($(NO_APIDOC),) ALL_GOALS += apidoc +INSTALL_DEPS += install_docs endif ############################################################################### @@ -119,9 +119,12 @@ proof: $(OUTPUT_DIR)/proof/libsparkcrypt apidoc: $(ADT_FILES) echo $^ | xargs -n1 > $(OUTPUT_DIR)/tree.lst adabrowse -T $(OUTPUT_DIR)/tree -f @$(OUTPUT_DIR)/tree.lst -w1 -c doc/adabrowse.conf -o $(OUTPUT_DIR)/doc/ - install -m 644 doc/libsparkcrypto.css $(OUTPUT_DIR)/doc/libsparkcrypto.css - install -m 644 doc/apidoc.css $(OUTPUT_DIR)/doc/apidoc.css - install -m 644 doc/lsc_logo.png $(OUTPUT_DIR)/doc/lsc_logo.png + +install_docs: + install -d -m 755 $(DESTDIR)$(PREFIX)/share/doc/libsparkcrypto + install -m 644 doc/libsparkcrypto.css doc/apidoc.css \ + doc/lsc_logo.png $(DESTDIR)$(PREFIX)/share/doc/libsparkcrypto + install -m 644 $(OUTPUT_DIR)/doc/* $(DESTDIR)$(PREFIX)/share/doc/libsparkcrypto/ archive: $(OUTPUT_DIR)/doc/libsparkcrypto-$(VERSION).tgz @@ -154,21 +157,33 @@ $(OUTPUT_DIR)/proof/libsparkcrypto.idx: install: $(INSTALL_DEPS) install_files: build - install -d -m 755 $(DESTDIR)/adalib $(DESTDIR)/adainclude $(DESTDIR)/sharedinclude - install -p -m 755 $(OUTPUT_DIR)/build/adalib/libsparkcrypto.a $(DESTDIR)/adalib/libsparkcrypto.a - install -p -m 644 build/libsparkcrypto.gpr $(DESTDIR)/libsparkcrypto.gpr - install -p -m 644 src/shared/$(ENDIANESS)/*.ad? $(DESTDIR)/sharedinclude/ - install -p -m 644 src/shared/generic/*.ad? $(DESTDIR)/sharedinclude/ - install -p -m 644 src/ada/generic/*.ad? $(DESTDIR)/adainclude/ - install -p -m 644 src/ada/$(IO)/*.ad? $(DESTDIR)/adainclude/ + install -d -m 755 $(DESTDIR)$(PREFIX)/lib/libsparkcrypto \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude \ + $(DESTDIR)$(PREFIX)/lib/gnat \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto/sharedinclude + install -p -m 755 $(OUTPUT_DIR)/build/adalib/libsparkcrypto.a \ + $(DESTDIR)$(PREFIX)/lib/libsparkcrypto + install -p -m 644 build/libsparkcrypto.gpr \ + $(DESTDIR)$(PREFIX)/lib/gnat + install -p -m 644 src/shared/$(ENDIANESS)/*.ad? \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto/sharedinclude/ + install -p -m 644 src/shared/generic/*.ad? \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto/sharedinclude/ + install -p -m 644 src/ada/generic/*.ad? \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/ + install -p -m 644 src/ada/$(IO)/*.ad? \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/ ifneq ($(strip $(ARCH_FILES)),) - install -p -m 644 $(ARCH_FILES) $(DESTDIR)/adainclude/ + install -p -m 644 $(ARCH_FILES) \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto/adainclude/ endif - install -p -m 444 $(OUTPUT_DIR)/build/adalib/*.ali $(DESTDIR)/adalib/ + install -p -m 444 $(OUTPUT_DIR)/build/adalib/*.ali \ + $(DESTDIR)$(PREFIX)/lib/libsparkcrypto/ install_proof: install_files proof - install -D -p -m 444 $(OUTPUT_DIR)/proof/libsparkcrypto.sum $(DESTDIR)/libsparkcrypto.sum - (cd $(OUTPUT_DIR)/empty && sparkmake -include=*\.ads -dir=$(DESTDIR)/sharedinclude -nometa -index=$(DESTDIR)/libsparkcrypto.idx) + install -D -p -m 444 $(OUTPUT_DIR)/proof/libsparkcrypto.sum \ + $(DESTDIR)$(PREFIX)/include/libsparkcrypto + (cd $(OUTPUT_DIR)/empty && sparkmake -include=*\.ads -dir=$(DESTDIR)$(PREFIX)/include/libsparkcrypto/sharedinclude -nometa -index=$(DESTDIR)$(PREFIX)/include/libsparkcrypto/libsparkcrypto.idx) install_local: DESTDIR = $(OUTPUT_DIR)/libsparkcrypto install_local: install [FILE:516:patches/patch-build_libsparkcrypto.gpr] --- build/libsparkcrypto.gpr.orig 2013-06-26 21:14:37.000000000 +0000 +++ build/libsparkcrypto.gpr @@ -1,7 +1,8 @@ project Libsparkcrypto is - for Source_Dirs use ("adainclude", "sharedinclude"); - for Library_Dir use "adalib"; + for Source_Dirs use ("../../include/libsparkcryto/adainclude", + "../../include/libsparkcrypto/sharedinclude"); + for Library_Dir use "../libsparkcrypto"; for Library_Kind use "static"; for Library_Name use "sparkcrypto"; for Externally_Built use "true"; [FILE:295:patches/patch-src_shared_generic_lsc-byteswap64.ads] --- src/shared/generic/lsc-byteswap64.ads.orig 2015-07-05 09:06:26 UTC +++ src/shared/generic/lsc-byteswap64.ads @@ -44,6 +44,5 @@ package LSC.Byteswap64 is -- Byte-swap @Value@ function Swap (Value : Types.Word64) return Types.Word64; - pragma Inline (Swap); end LSC.Byteswap64; [FILE:856:patches/patch-src_shared_generic_lsc-types.ads] --- src/shared/generic/lsc-types.ads.orig 2015-03-16 17:16:28 UTC +++ src/shared/generic/lsc-types.ads @@ -102,18 +102,14 @@ package LSC.Types is -- Convert 32-bit word to 32-bit byte array function Word32_To_Byte_Array32 (Value : Word32) return Byte_Array32_Type; - pragma Inline (Word32_To_Byte_Array32); -- Convert 32-bit byte array to 32-bit word function Byte_Array32_To_Word32 (Value : Byte_Array32_Type) return Word32; - pragma Inline (Byte_Array32_To_Word32); -- Convert 64-bit word to 64-bit byte array function Word64_To_Byte_Array64 (Value : Word64) return Byte_Array64_Type; - pragma Inline (Word64_To_Byte_Array64); -- Convert 64-bit byte array to 64-bit word function Byte_Array64_To_Word64 (Value : Byte_Array64_Type) return Word64; - pragma Inline (Byte_Array64_To_Word64); end LSC.Types;