scheme-libraries/Makefile

51 lines
1.3 KiB
Makefile

.POSIX:
SCHEME=chibi
LIBRARY=tap
AUTHORS=Retropikzel
MAINTAINER=Retropikzel
VERSION=$$(cat retropikzel/${LIBRARY}/VERSION)
PKG=retropikzel-${LIBRARY}-${VERSION}.tgz
TESTFILE=retropikzel/${LIBRARY}/test.scm
DOCKER_TAG=latest
all: package
package: retropikzel/${LIBRARY}/LICENSE retropikzel/${LIBRARY}/VERSION retropikzel/${LIBRARY}/DESCRIPTION
snow-chibi package \
--always-yes \
--version=${VERSION} \
--authors=${AUTHORS} \
--maintainers=${MAINTAINER} \
--license="$$(cat retropikzel/${LIBRARY}/LICENSE)" \
--doc-from-scribble=1 \
--test=${TESTFILE} \
--description="$$(head -n1 retropikzel/${LIBRARY}/DESCRIPTION)" \
retropikzel/${LIBRARY}.sld
snow-chibi git-index ${PKG}
install:
snow-chibi install --impls=${SCHEME} --always-yes --verbose?=1 --skip-tests?=1 ${PKG}
test: package
snow-chibi --impls=${SCHEME} test-package ${PKG}
test-compile-r7rs:
COMPILE_R7RS=${SCHEME} compile-r7rs -o test-program ${TESTFILE}
./test-program
test-docker:
DOCKER_TAG=${DOCKER_TAG} \
SNOW_PACKAGES="retropikzel.tap ${PKG}" \
COMPILE_R7RS=${SCHEME} \
test-r7rs -o test-program ${TESTFILE}
retropikzel/wasm/plus.wat: retropikzel/wasm/plus.c
emcc -o retropikzel/wasm/plus.js retropikzel/wasm/plus.c
wasm-dis retropikzel/wasm/plus.wasm > retropikzel/wasm/plus.wat
jenkinsfile: makings.scm
makings --jenkinsfile > Jenkinsfile
clean:
git clean -X -f