Chibi fixes
This commit is contained in:
parent
7eb54ddfdd
commit
1957a05e51
18
Makefile
18
Makefile
|
|
@ -6,9 +6,9 @@ VERSION=$(shell awk '/version:/{ print $$2 }' README.md )
|
||||||
TEST=primitives
|
TEST=primitives
|
||||||
SCHEME=chibi
|
SCHEME=chibi
|
||||||
|
|
||||||
all: package
|
all: build
|
||||||
|
|
||||||
package:
|
build:
|
||||||
markdown README.md > README.html
|
markdown README.md > README.html
|
||||||
snow-chibi package \
|
snow-chibi package \
|
||||||
--version=${VERSION} \
|
--version=${VERSION} \
|
||||||
|
|
@ -21,6 +21,9 @@ package:
|
||||||
install:
|
install:
|
||||||
snow-chibi --impls=${SCHEME} install foreign-c-${VERSION}.tgz
|
snow-chibi --impls=${SCHEME} install foreign-c-${VERSION}.tgz
|
||||||
|
|
||||||
|
uninstall:
|
||||||
|
snow-chibi --impls=${SCHEME} remove foreign.c
|
||||||
|
|
||||||
install-jenkins:
|
install-jenkins:
|
||||||
snow-chibi --impls=${SCHEME} --always-yes install foreign-c-${VERSION}.tgz
|
snow-chibi --impls=${SCHEME} --always-yes install foreign-c-${VERSION}.tgz
|
||||||
|
|
||||||
|
|
@ -33,6 +36,15 @@ test-java: tmp/test/libtest.o tmp/test/libtest.so tmp/test/libtest.a
|
||||||
cd tmp/test \
|
cd tmp/test \
|
||||||
&& ${JAVA_HOME}/bin/java --add-exports java.base/jdk.internal.foreign.abi=ALL-UNNAMED --add-exports java.base/jdk.internal.foreign.layout=ALL-UNNAMED --add-exports java.base/jdk.internal.foreign=ALL-UNNAMED --enable-native-access=ALL-UNNAMED --enable-preview -jar kawa.jar --r7rs --full-tailcalls -Dkawa.import.path=*.sld:./snow/*.sld:./snow/retropikzel/*.sld ${TEST}.scm
|
&& ${JAVA_HOME}/bin/java --add-exports java.base/jdk.internal.foreign.abi=ALL-UNNAMED --add-exports java.base/jdk.internal.foreign.layout=ALL-UNNAMED --add-exports java.base/jdk.internal.foreign=ALL-UNNAMED --enable-native-access=ALL-UNNAMED --enable-preview -jar kawa.jar --r7rs --full-tailcalls -Dkawa.import.path=*.sld:./snow/*.sld:./snow/retropikzel/*.sld ${TEST}.scm
|
||||||
|
|
||||||
|
test-chibi: tmp/test/libtest.o tmp/test/libtest.so tmp/test/libtest.a
|
||||||
|
make chibi
|
||||||
|
mkdir -p tmp/test
|
||||||
|
cp kawa.jar tmp/test/
|
||||||
|
cp -r foreign tmp/test/
|
||||||
|
cp tests/*.scm tmp/test/
|
||||||
|
cp tests/c-include/libtest.h tmp/test/
|
||||||
|
cd tmp/test && chibi-scheme -I . ${TEST}.scm
|
||||||
|
|
||||||
test: tmp/test/libtest.o tmp/test/libtest.so tmp/test/libtest.a
|
test: tmp/test/libtest.o tmp/test/libtest.so tmp/test/libtest.a
|
||||||
make ${SCHEME}
|
make ${SCHEME}
|
||||||
cp -r foreign tmp/test/
|
cp -r foreign tmp/test/
|
||||||
|
|
@ -67,7 +79,7 @@ test-compile-r7rs-wine:
|
||||||
|
|
||||||
test-docker:
|
test-docker:
|
||||||
docker build --build-arg SCHEME=${SCHEME} --tag=r7rs-pffi-test-${SCHEME} -f dockerfiles/Dockerfile.test .
|
docker build --build-arg SCHEME=${SCHEME} --tag=r7rs-pffi-test-${SCHEME} -f dockerfiles/Dockerfile.test .
|
||||||
docker run -it -v "${PWD}:/workdir" -w /workdir -t r7rs-pffi-test-${SCHEME} sh -c "make SCHEME=${SCHEME} TEST=${TEST} test-compile-r7rs"
|
docker run -it -v "${PWD}:/workdir" -w /workdir -t r7rs-pffi-test-${SCHEME} sh -c "make SCHEME=${SCHEME} TEST=${TEST} test"
|
||||||
|
|
||||||
tmp/test/libtest.o: tests/c-src/libtest.c
|
tmp/test/libtest.o: tests/c-src/libtest.c
|
||||||
mkdir -p tmp/test
|
mkdir -p tmp/test
|
||||||
|
|
|
||||||
|
|
@ -96,10 +96,11 @@
|
||||||
(cond-expand
|
(cond-expand
|
||||||
(chicken #t) ; FIXME
|
(chicken #t) ; FIXME
|
||||||
(kawa #t) ; FIXME
|
(kawa #t) ; FIXME
|
||||||
|
(chibi (define c-null? pointer?))
|
||||||
(else (define c-null?
|
(else (define c-null?
|
||||||
(lambda (pointer)
|
(lambda (pointer)
|
||||||
(if (c-bytevector? pointer)
|
(if (c-bytevector? pointer)
|
||||||
(= (c-memset-pointer->address pointer 0 0) 0)
|
(= (c-memset-pointer->address pointer 0 0 0) 0)
|
||||||
#f)))))
|
#f)))))
|
||||||
|
|
||||||
#;(define c-bytevector->address
|
#;(define c-bytevector->address
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue