changeset 391: |
757b91ddcb2a |
parent 390: |
88a6edf5291b |
child 392: |
077e7b391758 |
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Sat, 01 Jun 2024 02:45:44 -0400 |
files: |
lisp/ffi/zstd/constants.lisp lisp/ffi/zstd/pkg.lisp lisp/ffi/zstd/tests.lisp |
description: |
zstd init |
1.1--- a/lisp/ffi/zstd/constants.lisp Sat Jun 01 00:39:01 2024 -0400
1.2+++ b/lisp/ffi/zstd/constants.lisp Sat Jun 01 02:45:44 2024 -0400
1.3@@ -1,7 +1,9 @@
1.4 ("stddef.h" "zstd_errors.h" "zstd.h")
1.5
1.6-((:integer zstd-clevel-default "ZSTD_CLEVEL_DEFAULT" nil t)
1.7- (:integer zstd-magicnumber "ZSTD_MAGICNUMBER" nil t)
1.8+((:integer zstd-version-number "ZSTD_VERSION_NUMBER" nil t)
1.9+(:integer zstd-clevel-default "ZSTD_CLEVEL_DEFAULT" nil t)
1.10+(:integer zstd-magicnumber "ZSTD_MAGICNUMBER" nil t)
1.11+(:integer zstd-magic-dictionary "ZSTD_MAGIC_DICTIONARY" nil t)
1.12 (:integer zstd-magic-skippable-start "ZSTD_MAGIC_SKIPPABLE_START" nil t)
1.13 (:integer zstd-blocksizelog-max "ZSTD_BLOCKSIZELOG_MAX" nil t)
1.14 (:integer zstd-blocksize-max "ZSTD_BLOCKSIZE_MAX" nil t)
2.1--- a/lisp/ffi/zstd/pkg.lisp Sat Jun 01 00:39:01 2024 -0400
2.2+++ b/lisp/ffi/zstd/pkg.lisp Sat Jun 01 02:45:44 2024 -0400
2.3@@ -36,9 +36,20 @@
2.4
2.5 ;;; Code:
2.6 (defpackage :zstd
2.7- (:use :cl :std)
2.8+ (:use :cl :std :sb-alien)
2.9 (:nicknames :zstd))
2.10
2.11 (in-package :zstd)
2.12
2.13-(define-alien-loader "zstd" t)
2.14+(define-alien-loader "zstd" t "/usr/lib/")
2.15+
2.16+;;; Simple API
2.17+(define-alien-routine zstd-compress size-t
2.18+ (dst (* t)) (dst-capacity size-t)
2.19+ (src (* t)) (src-size size-t)
2.20+ (compression int))
2.21+
2.22+(define-alien-routine zstd-decompress size-t
2.23+ (dst (* t)) (dst-capacity size-t)
2.24+ (src (* t)) (compressed-size size-t))
2.25+
3.1--- a/lisp/ffi/zstd/tests.lisp Sat Jun 01 00:39:01 2024 -0400
3.2+++ b/lisp/ffi/zstd/tests.lisp Sat Jun 01 02:45:44 2024 -0400
3.3@@ -3,5 +3,17 @@
3.4 (in-package :zstd/tests)
3.5 (defsuite :zstd)
3.6 (in-suite :zstd)
3.7-
3.8-(deftest sanity () )
3.9+(load-zstd)
3.10+(deftest sanity ()
3.11+ (mapc (lambda (x)
3.12+ (is (= (car x) (cdr x))))
3.13+ `((,zstd::zstd-clevel-default . 3)
3.14+ (,zstd::zstd-magicnumber . -47205080)
3.15+ (,zstd::zstd-magic-skippable-start . 407710288)
3.16+ (,zstd::zstd-blocksizelog-max . 17)
3.17+ (,zstd::zstd-blocksize-max . 131072)
3.18+ (,zstd::zstd-contentsize-unknown . -1)
3.19+ (,zstd::zstd-contentsize-error . -2)
3.20+ (,zstd::zstd-max-input-size . -71777214294589696)
3.21+ (,zstd::zstd-version-number . 10506)
3.22+ (,zstd::zstd-magic-dictionary . -332356553))))