This commit is contained in:
retropikzel 2024-06-06 14:40:27 +03:00
parent e5b121416c
commit 08efcd520c
23 changed files with 62 additions and 46 deletions

View File

@ -2,8 +2,12 @@
VERSION=$(shell cat VERSION)
build: build-main-scm
install: build
schubert install
build-main-scm:
cp retropikzel/pffi/${VERSION}/main.sld retropikzel/pffi/${VERSION}/main.scm
@ -22,7 +26,7 @@ documentation:
tmp:
mkdir -p tmp
test:
test: build
bash test-all.sh
clean:

View File

@ -1 +1 @@
v0-2-1
v0-2-2

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 chicken)
(retropikzel pffi v0-2-2 chicken)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 cyclone)
(retropikzel pffi v0-2-2 cyclone)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 empty)
(retropikzel pffi v0-2-2 empty)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 gambit)
(retropikzel pffi v0-2-2 gambit)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 gerbil)
(retropikzel pffi v0-2-2 gerbil)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 guile)
(retropikzel pffi v0-2-2 guile)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,32 +1,32 @@
(define-library
(retropikzel pffi v0-2-1 main)
(retropikzel pffi v0-2-2 main)
(cond-expand
(sagittarius
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 sagittarius)))
(retropikzel pffi v0-2-2 sagittarius)))
(guile
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 guile)))
(retropikzel pffi v0-2-2 guile)))
(racket
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(only (racket base) system-type)
(retropikzel pffi v0-2-1 racket)))
(retropikzel pffi v0-2-2 racket)))
(stklos
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(stklos)
(retropikzel pffi v0-2-1 stklos)))
(retropikzel pffi v0-2-2 stklos)))
(kawa
(import (scheme base)
(scheme write)
@ -37,31 +37,31 @@
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 cyclone)))
(retropikzel pffi v0-2-2 cyclone)))
(gambit
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 gambit)))
(retropikzel pffi v0-2-2 gambit)))
(chicken
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 chicken)))
(retropikzel pffi v0-2-2 chicken)))
(chibi
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 chibi)))
(retropikzel pffi v0-2-2 chibi)))
(mit-scheme
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 mit-scheme))))
(retropikzel pffi v0-2-2 mit-scheme))))
(export pffi-shared-object-auto-load
pffi-shared-object-load
pffi-define
@ -83,7 +83,7 @@
(define library-version "v0-2-1")
(define library-version "v0-2-2")
(define slash (cond-expand (windows (string #\\)) (else "/")))
(define platform-file-extension
@ -149,7 +149,16 @@
(if (get-environment-variable "WINDIR")
(list (get-environment-variable "WINDIR"))
(list))
(list ".")
(if (get-environment-variable "WINEDLLDIR0")
(list (get-environment-variable "WINEDLLDIR0"))
(list))
(if (get-environment-variable "SystemRoot")
(list (string-append
(get-environment-variable "SystemRoot")
"system32"))
(list))
(list "."
)
(string-split (get-environment-variable "PATH") #\;)))
(else
(append
@ -166,7 +175,6 @@
"/usr/lib/x86_64-linux-gnu"
"/usr/local/lib"
"/usr/lib"
"/usr/lib32"
"/usr/lib64"))))))
(define auto-load-versions (list ""))
@ -192,14 +200,16 @@
object-name
platform-file-extension
version)))
(write library-path)
(newline)
(if (file-exists? library-path)
(set! shared-object library-path))))
versions))
paths)
(if (not shared-object)
(error "Could not load shared object" object-name)
(error "Could not load shared object"
(list (cons 'object object-name)
(cons 'paths paths)
(cons 'platform-file-extension platform-file-extension)
(cons 'versions versions)))
(pffi-shared-object-load headers shared-object))))))))
(cond-expand

View File

@ -6,27 +6,27 @@
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 sagittarius)))
(retropikzel pffi v0-2-2 sagittarius)))
(guile
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 guile)))
(retropikzel pffi v0-2-2 guile)))
(racket
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(only (racket base) system-type)
(retropikzel pffi v0-2-1 racket)))
(retropikzel pffi v0-2-2 racket)))
(stklos
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(stklos)
(retropikzel pffi v0-2-1 stklos)))
(retropikzel pffi v0-2-2 stklos)))
(kawa
(import (scheme base)
(scheme write)
@ -37,31 +37,31 @@
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 cyclone)))
(retropikzel pffi v0-2-2 cyclone)))
(gambit
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 gambit)))
(retropikzel pffi v0-2-2 gambit)))
(chicken
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 chicken)))
(retropikzel pffi v0-2-2 chicken)))
(chibi
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 chibi)))
(retropikzel pffi v0-2-2 chibi)))
(mit-scheme
(import (scheme base)
(scheme write)
(scheme file)
(scheme process-context)
(retropikzel pffi v0-2-1 mit-scheme))))
(retropikzel pffi v0-2-2 mit-scheme))))
(export pffi-shared-object-auto-load
pffi-shared-object-load
pffi-define
@ -83,7 +83,7 @@
(define library-version "v0-2-1")
(define library-version "v0-2-2")
(define slash (cond-expand (windows (string #\\)) (else "/")))
(define platform-file-extension

View File

@ -1,7 +1,7 @@
#lang r7rs
(define-library
(retropikzel pffi v0-2-1 racket)
(retropikzel pffi v0-2-2 racket)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 sagittarius)
(retropikzel pffi v0-2-2 sagittarius)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -1,5 +1,5 @@
(define-library
(retropikzel pffi v0-2-1 stklos)
(retropikzel pffi v0-2-2 stklos)
(import (scheme base)
(scheme write)
(scheme file)

View File

@ -3,6 +3,8 @@
set -eu
set -o pipefail
VERSION=$(cat VERSION)
for testfile in ./test-*.sh
do
if [[ ! "${testfile}" = "./test-all.sh" ]];

View File

@ -1,6 +1,6 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(display "Hello from import.scm")
(newline)

View File

@ -1,6 +1,6 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(display 'int8)
(display " ")

View File

@ -1,6 +1,6 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(define p (pffi-pointer-allocate (+ (* (pffi-size-of 'uint32) 3)
(* (pffi-size-of 'uint8) 4)

View File

@ -1,6 +1,6 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(define p (pffi-pointer-allocate (+ (* (pffi-size-of 'uint32) 3)
(* (pffi-size-of 'uint8) 4)

View File

@ -1,6 +1,6 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(define p (pffi-pointer-allocate (+ (* (pffi-size-of 'uint32) 3)
(* (pffi-size-of 'uint8) 4)

View File

@ -1,6 +1,6 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(define p (pffi-pointer-allocate (+ (* (pffi-size-of 'uint32) 3)
(* (pffi-size-of 'uint8) 4)

View File

@ -1,6 +1,6 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(define original "Hello world")

View File

@ -2,7 +2,7 @@
(scheme write)
(scheme process-context)
(scheme eval)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(define libcurl (pffi-shared-object-auto-load (list "curl/curl.h")
(list)

View File

@ -2,7 +2,7 @@
(scheme write)
(scheme process-context)
(scheme eval)
(retropikzel pffi v0-2-1 main))
(retropikzel pffi v0-2-2 main))
(define libc (pffi-shared-object-auto-load (list "curl/curl.h")
(list)