summaryrefslogtreecommitdiff
path: root/pkg/bearssl/gen.lua
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/bearssl/gen.lua')
-rw-r--r--pkg/bearssl/gen.lua276
1 files changed, 276 insertions, 0 deletions
diff --git a/pkg/bearssl/gen.lua b/pkg/bearssl/gen.lua
new file mode 100644
index 00000000..11958011
--- /dev/null
+++ b/pkg/bearssl/gen.lua
@@ -0,0 +1,276 @@
+cflags{
+ '-Wall',
+ '-I $srcdir/src',
+ '-I $srcdir/inc',
+}
+
+pkg.hdrs = copy('$outdir/include', '$srcdir/inc', {
+ 'bearssl.h',
+ 'bearssl_aead.h',
+ 'bearssl_block.h',
+ 'bearssl_ec.h',
+ 'bearssl_hash.h',
+ 'bearssl_hmac.h',
+ 'bearssl_pem.h',
+ 'bearssl_prf.h',
+ 'bearssl_rand.h',
+ 'bearssl_rsa.h',
+ 'bearssl_ssl.h',
+ 'bearssl_x509.h',
+})
+pkg.hdrs.install = true
+
+lib('libbearssl.a', [[src/(
+ aead/gcm.c
+ codec/ccopy.c
+ codec/dec16be.c
+ codec/dec16le.c
+ codec/dec32be.c
+ codec/dec32le.c
+ codec/dec64be.c
+ codec/dec64le.c
+ codec/enc16be.c
+ codec/enc16le.c
+ codec/enc32be.c
+ codec/enc32le.c
+ codec/enc64be.c
+ codec/enc64le.c
+ codec/pemdec.c
+ ec/ec_all_m15.c
+ ec/ec_all_m31.c
+ ec/ec_c25519_i15.c
+ ec/ec_c25519_i31.c
+ ec/ec_c25519_m15.c
+ ec/ec_c25519_m31.c
+ ec/ec_curve25519.c
+ ec/ec_default.c
+ ec/ec_p256_m15.c
+ ec/ec_p256_m31.c
+ ec/ec_prime_i15.c
+ ec/ec_prime_i31.c
+ ec/ec_secp256r1.c
+ ec/ec_secp384r1.c
+ ec/ec_secp521r1.c
+ ec/ecdsa_atr.c
+ ec/ecdsa_default_sign_asn1.c
+ ec/ecdsa_default_sign_raw.c
+ ec/ecdsa_default_vrfy_asn1.c
+ ec/ecdsa_default_vrfy_raw.c
+ ec/ecdsa_i15_bits.c
+ ec/ecdsa_i15_sign_asn1.c
+ ec/ecdsa_i15_sign_raw.c
+ ec/ecdsa_i15_vrfy_asn1.c
+ ec/ecdsa_i15_vrfy_raw.c
+ ec/ecdsa_i31_bits.c
+ ec/ecdsa_i31_sign_asn1.c
+ ec/ecdsa_i31_sign_raw.c
+ ec/ecdsa_i31_vrfy_asn1.c
+ ec/ecdsa_i31_vrfy_raw.c
+ ec/ecdsa_rta.c
+ hash/dig_oid.c
+ hash/dig_size.c
+ hash/ghash_ctmul.c
+ hash/ghash_ctmul32.c
+ hash/ghash_ctmul64.c
+ hash/ghash_pclmul.c
+ hash/ghash_pwr8.c
+ hash/md5.c
+ hash/md5sha1.c
+ hash/multihash.c
+ hash/sha1.c
+ hash/sha2big.c
+ hash/sha2small.c
+ int/i15_add.c
+ int/i15_bitlen.c
+ int/i15_decmod.c
+ int/i15_decode.c
+ int/i15_decred.c
+ int/i15_encode.c
+ int/i15_fmont.c
+ int/i15_iszero.c
+ int/i15_modpow.c
+ int/i15_modpow2.c
+ int/i15_montmul.c
+ int/i15_mulacc.c
+ int/i15_muladd.c
+ int/i15_ninv15.c
+ int/i15_reduce.c
+ int/i15_rshift.c
+ int/i15_sub.c
+ int/i15_tmont.c
+ int/i31_add.c
+ int/i31_bitlen.c
+ int/i31_decmod.c
+ int/i31_decode.c
+ int/i31_decred.c
+ int/i31_encode.c
+ int/i31_fmont.c
+ int/i31_iszero.c
+ int/i31_modpow.c
+ int/i31_modpow2.c
+ int/i31_montmul.c
+ int/i31_mulacc.c
+ int/i31_muladd.c
+ int/i31_ninv31.c
+ int/i31_reduce.c
+ int/i31_rshift.c
+ int/i31_sub.c
+ int/i31_tmont.c
+ int/i32_add.c
+ int/i32_bitlen.c
+ int/i32_decmod.c
+ int/i32_decode.c
+ int/i32_decred.c
+ int/i32_div32.c
+ int/i32_encode.c
+ int/i32_fmont.c
+ int/i32_iszero.c
+ int/i32_modpow.c
+ int/i32_montmul.c
+ int/i32_mulacc.c
+ int/i32_muladd.c
+ int/i32_ninv32.c
+ int/i32_reduce.c
+ int/i32_sub.c
+ int/i32_tmont.c
+ int/i62_modpow2.c
+ mac/hmac.c
+ mac/hmac_ct.c
+ rand/hmac_drbg.c
+ rsa/rsa_default_pkcs1_sign.c
+ rsa/rsa_default_pkcs1_vrfy.c
+ rsa/rsa_default_priv.c
+ rsa/rsa_default_pub.c
+ rsa/rsa_i15_pkcs1_sign.c
+ rsa/rsa_i15_pkcs1_vrfy.c
+ rsa/rsa_i15_priv.c
+ rsa/rsa_i15_pub.c
+ rsa/rsa_i31_pkcs1_sign.c
+ rsa/rsa_i31_pkcs1_vrfy.c
+ rsa/rsa_i31_priv.c
+ rsa/rsa_i31_pub.c
+ rsa/rsa_i32_pkcs1_sign.c
+ rsa/rsa_i32_pkcs1_vrfy.c
+ rsa/rsa_i32_priv.c
+ rsa/rsa_i32_pub.c
+ rsa/rsa_i62_pkcs1_sign.c
+ rsa/rsa_i62_pkcs1_vrfy.c
+ rsa/rsa_i62_priv.c
+ rsa/rsa_i62_pub.c
+ rsa/rsa_pkcs1_sig_pad.c
+ rsa/rsa_pkcs1_sig_unpad.c
+ rsa/rsa_ssl_decrypt.c
+ ssl/prf.c
+ ssl/prf_md5sha1.c
+ ssl/prf_sha256.c
+ ssl/prf_sha384.c
+ ssl/ssl_ccert_single_ec.c
+ ssl/ssl_ccert_single_rsa.c
+ ssl/ssl_client.c
+ ssl/ssl_client_default_rsapub.c
+ ssl/ssl_client_full.c
+ ssl/ssl_engine.c
+ ssl/ssl_engine_default_aescbc.c
+ ssl/ssl_engine_default_aesgcm.c
+ ssl/ssl_engine_default_chapol.c
+ ssl/ssl_engine_default_descbc.c
+ ssl/ssl_engine_default_ec.c
+ ssl/ssl_engine_default_ecdsa.c
+ ssl/ssl_engine_default_rsavrfy.c
+ ssl/ssl_hashes.c
+ ssl/ssl_hs_client.c
+ ssl/ssl_hs_server.c
+ ssl/ssl_io.c
+ ssl/ssl_keyexport.c
+ ssl/ssl_lru.c
+ ssl/ssl_rec_cbc.c
+ ssl/ssl_rec_chapol.c
+ ssl/ssl_rec_gcm.c
+ ssl/ssl_scert_single_ec.c
+ ssl/ssl_scert_single_rsa.c
+ ssl/ssl_server.c
+ ssl/ssl_server_full_ec.c
+ ssl/ssl_server_full_rsa.c
+ ssl/ssl_server_mine2c.c
+ ssl/ssl_server_mine2g.c
+ ssl/ssl_server_minf2c.c
+ ssl/ssl_server_minf2g.c
+ ssl/ssl_server_minr2g.c
+ ssl/ssl_server_minu2g.c
+ ssl/ssl_server_minv2g.c
+ symcipher/aes_big_cbcdec.c
+ symcipher/aes_big_cbcenc.c
+ symcipher/aes_big_ctr.c
+ symcipher/aes_big_dec.c
+ symcipher/aes_big_enc.c
+ symcipher/aes_common.c
+ symcipher/aes_ct.c
+ symcipher/aes_ct64.c
+ symcipher/aes_ct64_cbcdec.c
+ symcipher/aes_ct64_cbcenc.c
+ symcipher/aes_ct64_ctr.c
+ symcipher/aes_ct64_dec.c
+ symcipher/aes_ct64_enc.c
+ symcipher/aes_ct_cbcdec.c
+ symcipher/aes_ct_cbcenc.c
+ symcipher/aes_ct_ctr.c
+ symcipher/aes_ct_dec.c
+ symcipher/aes_ct_enc.c
+ symcipher/aes_pwr8.c
+ symcipher/aes_pwr8_cbcdec.c
+ symcipher/aes_pwr8_cbcenc.c
+ symcipher/aes_pwr8_ctr.c
+ symcipher/aes_small_cbcdec.c
+ symcipher/aes_small_cbcenc.c
+ symcipher/aes_small_ctr.c
+ symcipher/aes_small_dec.c
+ symcipher/aes_small_enc.c
+ symcipher/aes_x86ni.c
+ symcipher/aes_x86ni_cbcdec.c
+ symcipher/aes_x86ni_cbcenc.c
+ symcipher/aes_x86ni_ctr.c
+ symcipher/chacha20_ct.c
+ symcipher/chacha20_sse2.c
+ symcipher/des_ct.c
+ symcipher/des_ct_cbcdec.c
+ symcipher/des_ct_cbcenc.c
+ symcipher/des_support.c
+ symcipher/des_tab.c
+ symcipher/des_tab_cbcdec.c
+ symcipher/des_tab_cbcenc.c
+ symcipher/poly1305_ctmul.c
+ symcipher/poly1305_ctmul32.c
+ symcipher/poly1305_ctmulq.c
+ symcipher/poly1305_i15.c
+ x509/skey_decoder.c
+ x509/x509_decoder.c
+ x509/x509_knownkey.c
+ x509/x509_minimal.c
+ x509/x509_minimal_full.c
+)]])
+file('lib/libbearssl.a', '644', '$outdir/libbearssl.a')
+
+exe('brssl', [[
+ tools/(
+ brssl.c
+ certs.c
+ chain.c
+ client.c
+ errors.c
+ files.c
+ keys.c
+ names.c
+ server.c
+ skey.c
+ sslio.c
+ ta.c
+ twrch.c
+ vector.c
+ verify.c
+ xmem.c
+ )
+ libbearssl.a
+]])
+file('bin/brssl', '755', '$outdir/brssl')
+
+fetch 'git'