diff options
| author | 2025-08-08 10:42:27 -0400 | |
|---|---|---|
| committer | 2025-08-08 10:42:27 -0400 | |
| commit | 44433f42f14eb0c86b87555710c3d950dd300099 (patch) | |
| tree | 6bacee719592db24f6e86ec2818ab06bd01429db /examples/pffi-chibi.scm | |
| parent | update README.md (diff) | |
rationalize packages, add foment
Diffstat (limited to 'examples/pffi-chibi.scm')
| -rw-r--r-- | examples/pffi-chibi.scm | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/examples/pffi-chibi.scm b/examples/pffi-chibi.scm deleted file mode 100644 index e68224d..0000000 --- a/examples/pffi-chibi.scm +++ /dev/null @@ -1,83 +0,0 @@ -#| Copyright (C) 2025 Peter McGoron - | - | This program is free software: you can redistribute it and/or modify it - | under the terms of the GNU General Public License as published by the - | Free Software Foundation, either version 3 of the License, or (at your - | option) any later version. - | - | This program is distributed in the hope that it will be useful, but - | WITHOUT ANY WARRANTY; without even the implied warranty of - | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - | General Public License for more details. - | - | You should have received a copy of the GNU General Public License along - | with this program. If not, see <https://www.gnu.org/licenses/>. - |# - -(use-modules (mcgoron guix chibi) - (gnu packages libffi) - (gnu packages commencement) - (gnu packages base) - (guix git-download) - (guix build-system gnu) - (guix packages) - (guix gexp) - (guix licenses)) - -(package - (name "pffi-chibi") - (version "0.5.0") - (synopsis "Portable Foreign Function Interface for R7RS") - (description "Portable Foreign Function Interface for R7RS") - (license lgpl3+) - (home-page "https://sr.ht/~retropikzel/r7rs-pffi") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://git.sr.ht/~retropikzel/r7rs-pffi/") - (commit "v0.5.0"))) - (file-name (git-file-name "r7rs-pffi" version)) - (sha256 - (base32 "1ggkafggyqqla6ba8dlhzvvf6v7i6scpa2xyr1mfxxy8iwnl70aa")))) - (build-system gnu-build-system) - (inputs (list chibi-scheme-with-path libffi)) - (native-inputs (list gcc-toolchain glibc)) - (arguments - `(#:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda* (#:key outputs #:allow-other-keys) - (invoke "chibi-ffi" - "retropikzel/r7rs-pffi/r7rs-pffi-chibi.stub") - (invoke "gcc" - "-o" - "retropikzel/r7rs-pffi/r7rs-pffi-chibi.so" - "-fPIC" - "-shared" - "retropikzel/r7rs-pffi/r7rs-pffi-chibi.c" - "-lchibi-scheme" - "-lffi"))) - (replace 'check - (lambda* (#:key (test-target "check") (tests? #t) #:allow-other-keys) - (display "tests don't work yet\n") - #;(when tests? - (invoke "chibi-scheme" "-A" "." "test.scm")))) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (base-dir (string-append out - "/share/guix-chibi/retropikzel/")) - (copy (lambda (name) - (invoke "cp" - (string-append "retropikzel/" name) - (string-append base-dir name))))) - (invoke "mkdir" "-p" (string-append base-dir "/r7rs-pffi")) - (for-each copy - '("r7rs-pffi.sld" - "r7rs-pffi/r7rs-pffi-chibi.so" - "r7rs-pffi/chibi.scm" - "r7rs-pffi/main.scm" - "r7rs-pffi/struct.scm"))))))))) - |
