AtlatestRepositorysigil-tls

sigil-tls / treepackage.sgl

1;;; sigil-tls - TLS/SSL Connections
2;;;
3;;; Provides TLS/SSL connections using mbedTLS:
4;;; - Secure TCP connections (tls-connect, tls-read, tls-write)
5;;; - System CA certificate verification
6;;; - Non-blocking I/O support for async integration
7;;;
8;;; Depends on sigil-crypto which vendors mbedTLS.
9
10(package
11 name: "sigil-tls"
12 version: "0.16.4"
13 sigil: "^0.17"
14 description: "TLS/SSL connections for Sigil"
15 url: "https://codeberg.org/sigil/sigil-tls"
16 license: "BSD-3-Clause"
17 authors: (list "David Wilson <[email protected]>")
19 dependencies: (list
20 ;; Explicit sigil-lib pin: overrides the extraction-era implicit
21 ;; sigil-stdlib/sigil-lib (^0.15 from the retired sigil-lang repo)
22 ;; that the reintegrated monorepo test-runner chain would otherwise
23 ;; derive. sigil-tls's native codegen needs the 0.17 runtime headers.
24 (from-git url: "codeberg:sigil/sigil"
25 package: "sigil-lib" version: "^0.17")
26 (from-git url: "codeberg:sigil/sigil-crypto" version: "^0.16"))
28 dev-dependencies: (list
29 (from-git url: "codeberg:sigil/sigil" package: "sigil-test" version: "^0.17")
30 (from-git url: "codeberg:sigil/sigil" package: "sigil-test-runner" version: "^0.17"))
32 ;; Native library definition
33 ;; Note: mbedTLS headers/libs come from sigil-crypto dependency — the
34 ;; build system auto-injects sigil-crypto's c-include-dirs
35 ;; (vendor/mbedtls/include + vendor/mbedtls) via dep-include-flags.
36 libraries: (list
37 (library
38 name: 'sigil-tls
39 c-sources: '("native/tls.c")
40 c-flags: '("-DMBEDTLS_CONFIG_FILE=\"sigil_mbedtls_config.h\"")
41 native-init: "sigil__init_sigil_tls_module"))
43 tasks: (list
44 (task
45 name: 'build
46 description: "Build the sigil-tls native library"
47 steps: (list
48 ;; Compile tls.c
49 ;; Depends on sigil-lib headers and sigil-crypto (mbedTLS headers).
50 ;; Uses the same mbedTLS config as sigil-crypto for consistent
51 ;; builds. mbedTLS include paths are auto-injected by the build
52 ;; system from sigil-crypto's exposed c-include-dirs.
53 (compile-c-sources
54 sources: '("native/tls.c")
55 flags: (with-sigil-c-flags
56 '("-std=c99"
57 "-Wall" "-Wextra"
58 "-Wno-unused-parameter"
59 "-D_GNU_SOURCE"
60 "-DMBEDTLS_CONFIG_FILE=\"sigil_mbedtls_config.h\"")))
62 ;; Create static library
63 (create-static-library
64 name: "sigil-tls")
66 ;; Compile Scheme module
67 (compile-sigil-modules
68 sources: "src/**/*.sgl")))))