From c05b7ebf9d94a760c051db814dd48ec8c828e9e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matheus=20Catarino=20Fran=C3=A7a?= Date: Wed, 28 Feb 2024 16:17:41 -0300 Subject: [PATCH] zig: fix src abspath closes https://github.com/kassane/wolfssl/issues/3 --- build.zig | 213 ++++++++++++++++++++++++++---------------------------- 1 file changed, 102 insertions(+), 111 deletions(-) diff --git a/build.zig b/build.zig index 8ac24aba20..d9b36ef66b 100644 --- a/build.zig +++ b/build.zig @@ -81,7 +81,7 @@ pub fn build(b: *std.Build) void { lib.addConfigHeader(config); lib.addIncludePath(Path.relative(config.include_path)); lib.addIncludePath(Path.relative("wolfssl")); - lib.addIncludePath(.{ .path = sdkPath("/") }); + lib.addIncludePath(.{ .path = "." }); lib.addCSourceFiles(.{ .files = wolfssl_sources, .flags = cflags }); lib.addCSourceFiles(.{ .files = wolfcrypt_sources, .flags = cflags }); lib.defineCMacro("TFM_TIMING_RESISTANT", null); @@ -269,121 +269,112 @@ const cflags = &.{ }; const wolfssl_sources = &.{ - sdkPath("/src/bio.c"), - sdkPath("/src/conf.c"), - sdkPath("/src/crl.c"), - sdkPath("/src/dtls.c"), - sdkPath("/src/dtls13.c"), - sdkPath("/src/internal.c"), - sdkPath("/src/keys.c"), - sdkPath("/src/ocsp.c"), - sdkPath("/src/pk.c"), - sdkPath("/src/quic.c"), - sdkPath("/src/sniffer.c"), - sdkPath("/src/ssl.c"), - sdkPath("/src/ssl_asn1.c"), - sdkPath("/src/ssl_bn.c"), - sdkPath("/src/ssl_misc.c"), - sdkPath("/src/tls.c"), - sdkPath("/src/tls13.c"), - sdkPath("/src/wolfio.c"), - sdkPath("/src/x509.c"), - sdkPath("/src/x509_str.c"), + "src/bio.c", + "src/conf.c", + "src/crl.c", + "src/dtls.c", + "src/dtls13.c", + "src/internal.c", + "src/keys.c", + "src/ocsp.c", + "src/pk.c", + "src/quic.c", + "src/sniffer.c", + "src/ssl.c", + "src/ssl_asn1.c", + "src/ssl_bn.c", + "src/ssl_misc.c", + "src/tls.c", + "src/tls13.c", + "src/wolfio.c", + "src/x509.c", + "src/x509_str.c", }; const wolfcrypt_sources = &.{ - sdkPath("/wolfcrypt/src/aes.c"), - sdkPath("/wolfcrypt/src/arc4.c"), - sdkPath("/wolfcrypt/src/asm.c"), - sdkPath("/wolfcrypt/src/asn.c"), - sdkPath("/wolfcrypt/src/blake2b.c"), - sdkPath("/wolfcrypt/src/blake2s.c"), - sdkPath("/wolfcrypt/src/camellia.c"), - sdkPath("/wolfcrypt/src/chacha.c"), - sdkPath("/wolfcrypt/src/chacha20_poly1305.c"), - sdkPath("/wolfcrypt/src/cmac.c"), - sdkPath("/wolfcrypt/src/coding.c"), - sdkPath("/wolfcrypt/src/compress.c"), - sdkPath("/wolfcrypt/src/cpuid.c"), - sdkPath("/wolfcrypt/src/cryptocb.c"), - sdkPath("/wolfcrypt/src/curve25519.c"), - sdkPath("/wolfcrypt/src/curve448.c"), - sdkPath("/wolfcrypt/src/des3.c"), - sdkPath("/wolfcrypt/src/dh.c"), - sdkPath("/wolfcrypt/src/dilithium.c"), - sdkPath("/wolfcrypt/src/dsa.c"), - sdkPath("/wolfcrypt/src/ecc.c"), - sdkPath("/wolfcrypt/src/ecc_fp.c"), - sdkPath("/wolfcrypt/src/eccsi.c"), - sdkPath("/wolfcrypt/src/ed25519.c"), - sdkPath("/wolfcrypt/src/ed448.c"), - sdkPath("/wolfcrypt/src/error.c"), - sdkPath("/wolfcrypt/src/evp.c"), - sdkPath("/wolfcrypt/src/ext_kyber.c"), - sdkPath("/wolfcrypt/src/falcon.c"), - sdkPath("/wolfcrypt/src/fe_448.c"), - sdkPath("/wolfcrypt/src/fe_low_mem.c"), - sdkPath("/wolfcrypt/src/fe_operations.c"), - sdkPath("/wolfcrypt/src/ge_448.c"), - sdkPath("/wolfcrypt/src/ge_low_mem.c"), - sdkPath("/wolfcrypt/src/ge_operations.c"), - sdkPath("/wolfcrypt/src/hash.c"), - sdkPath("/wolfcrypt/src/hmac.c"), - sdkPath("/wolfcrypt/src/hpke.c"), - sdkPath("/wolfcrypt/src/integer.c"), - sdkPath("/wolfcrypt/src/kdf.c"), - sdkPath("/wolfcrypt/src/logging.c"), - sdkPath("/wolfcrypt/src/md2.c"), - sdkPath("/wolfcrypt/src/md4.c"), - sdkPath("/wolfcrypt/src/md5.c"), - sdkPath("/wolfcrypt/src/memory.c"), - sdkPath("/wolfcrypt/src/misc.c"), - sdkPath("/wolfcrypt/src/pkcs12.c"), - sdkPath("/wolfcrypt/src/pkcs7.c"), - sdkPath("/wolfcrypt/src/poly1305.c"), - sdkPath("/wolfcrypt/src/pwdbased.c"), - sdkPath("/wolfcrypt/src/random.c"), - sdkPath("/wolfcrypt/src/rc2.c"), - sdkPath("/wolfcrypt/src/ripemd.c"), - sdkPath("/wolfcrypt/src/rsa.c"), - sdkPath("/wolfcrypt/src/sakke.c"), - sdkPath("/wolfcrypt/src/sha.c"), - sdkPath("/wolfcrypt/src/sha256.c"), - sdkPath("/wolfcrypt/src/sha3.c"), - sdkPath("/wolfcrypt/src/sha512.c"), - sdkPath("/wolfcrypt/src/signature.c"), - sdkPath("/wolfcrypt/src/siphash.c"), - sdkPath("/wolfcrypt/src/sp_arm32.c"), - sdkPath("/wolfcrypt/src/sp_arm64.c"), - sdkPath("/wolfcrypt/src/sp_armthumb.c"), - sdkPath("/wolfcrypt/src/sp_c32.c"), - sdkPath("/wolfcrypt/src/sp_c64.c"), - sdkPath("/wolfcrypt/src/sp_cortexm.c"), - sdkPath("/wolfcrypt/src/sp_dsp32.c"), - sdkPath("/wolfcrypt/src/sp_int.c"), - sdkPath("/wolfcrypt/src/sp_x86_64.c"), - sdkPath("/wolfcrypt/src/sphincs.c"), - sdkPath("/wolfcrypt/src/srp.c"), - sdkPath("/wolfcrypt/src/tfm.c"), - sdkPath("/wolfcrypt/src/wc_dsp.c"), - sdkPath("/wolfcrypt/src/wc_encrypt.c"), - sdkPath("/wolfcrypt/src/wc_kyber.c"), - sdkPath("/wolfcrypt/src/wc_kyber_poly.c"), - sdkPath("/wolfcrypt/src/wc_pkcs11.c"), - sdkPath("/wolfcrypt/src/wc_port.c"), - sdkPath("/wolfcrypt/src/wolfevent.c"), - sdkPath("/wolfcrypt/src/wolfmath.c"), + "wolfcrypt/src/aes.c", + "wolfcrypt/src/arc4.c", + "wolfcrypt/src/asm.c", + "wolfcrypt/src/asn.c", + "wolfcrypt/src/blake2b.c", + "wolfcrypt/src/blake2s.c", + "wolfcrypt/src/camellia.c", + "wolfcrypt/src/chacha.c", + "wolfcrypt/src/chacha20_poly1305.c", + "wolfcrypt/src/cmac.c", + "wolfcrypt/src/coding.c", + "wolfcrypt/src/compress.c", + "wolfcrypt/src/cpuid.c", + "wolfcrypt/src/cryptocb.c", + "wolfcrypt/src/curve25519.c", + "wolfcrypt/src/curve448.c", + "wolfcrypt/src/des3.c", + "wolfcrypt/src/dh.c", + "wolfcrypt/src/dilithium.c", + "wolfcrypt/src/dsa.c", + "wolfcrypt/src/ecc.c", + "wolfcrypt/src/ecc_fp.c", + "wolfcrypt/src/eccsi.c", + "wolfcrypt/src/ed25519.c", + "wolfcrypt/src/ed448.c", + "wolfcrypt/src/error.c", + "wolfcrypt/src/evp.c", + "wolfcrypt/src/ext_kyber.c", + "wolfcrypt/src/falcon.c", + "wolfcrypt/src/fe_448.c", + "wolfcrypt/src/fe_low_mem.c", + "wolfcrypt/src/fe_operations.c", + "wolfcrypt/src/ge_448.c", + "wolfcrypt/src/ge_low_mem.c", + "wolfcrypt/src/ge_operations.c", + "wolfcrypt/src/hash.c", + "wolfcrypt/src/hmac.c", + "wolfcrypt/src/hpke.c", + "wolfcrypt/src/integer.c", + "wolfcrypt/src/kdf.c", + "wolfcrypt/src/logging.c", + "wolfcrypt/src/md2.c", + "wolfcrypt/src/md4.c", + "wolfcrypt/src/md5.c", + "wolfcrypt/src/memory.c", + "wolfcrypt/src/misc.c", + "wolfcrypt/src/pkcs12.c", + "wolfcrypt/src/pkcs7.c", + "wolfcrypt/src/poly1305.c", + "wolfcrypt/src/pwdbased.c", + "wolfcrypt/src/random.c", + "wolfcrypt/src/rc2.c", + "wolfcrypt/src/ripemd.c", + "wolfcrypt/src/rsa.c", + "wolfcrypt/src/sakke.c", + "wolfcrypt/src/sha.c", + "wolfcrypt/src/sha256.c", + "wolfcrypt/src/sha3.c", + "wolfcrypt/src/sha512.c", + "wolfcrypt/src/signature.c", + "wolfcrypt/src/siphash.c", + "wolfcrypt/src/sp_arm32.c", + "wolfcrypt/src/sp_arm64.c", + "wolfcrypt/src/sp_armthumb.c", + "wolfcrypt/src/sp_c32.c", + "wolfcrypt/src/sp_c64.c", + "wolfcrypt/src/sp_cortexm.c", + "wolfcrypt/src/sp_dsp32.c", + "wolfcrypt/src/sp_int.c", + "wolfcrypt/src/sp_x86_64.c", + "wolfcrypt/src/sphincs.c", + "wolfcrypt/src/srp.c", + "wolfcrypt/src/tfm.c", + "wolfcrypt/src/wc_dsp.c", + "wolfcrypt/src/wc_encrypt.c", + "wolfcrypt/src/wc_kyber.c", + "wolfcrypt/src/wc_kyber_poly.c", + "wolfcrypt/src/wc_pkcs11.c", + "wolfcrypt/src/wc_port.c", + "wolfcrypt/src/wolfevent.c", + "wolfcrypt/src/wolfmath.c", }; -fn sdkPath(comptime suffix: []const u8) []const u8 { - if (suffix[0] != '/') @compileError("relToPath requires an absolute path!"); - return comptime blk: { - @setEvalBranchQuota(2000); - const root_dir = std.fs.path.dirname(@src().file) orelse "."; - break :blk root_dir ++ suffix; - }; -} - fn isX86(target: std.Build.ResolvedTarget) bool { return switch (target.result.cpu.arch) { .x86, .x86_64 => true,