Add Gauche install
This commit is contained in:
parent
f6d55acf92
commit
fef3a2ad2e
|
|
@ -24,7 +24,7 @@ pipeline {
|
||||||
|
|
||||||
parallel implementations.collectEntries { implementation ->
|
parallel implementations.collectEntries { implementation ->
|
||||||
[(implementation): {
|
[(implementation): {
|
||||||
stage("${implementation} snow-chibi install") {
|
stage("${implementation} test install") {
|
||||||
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
|
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
|
||||||
if("${implementation}" == "chicken") {
|
if("${implementation}" == "chicken") {
|
||||||
DOCKERIMG="chicken:5"
|
DOCKERIMG="chicken:5"
|
||||||
|
|
@ -32,7 +32,7 @@ pipeline {
|
||||||
DOCKERIMG="${implementation}:head"
|
DOCKERIMG="${implementation}:head"
|
||||||
}
|
}
|
||||||
sh "docker build --build-arg IMAGE=${DOCKERIMG} --build-arg SCHEME=${implementation} --tag=foreign-c-test-${implementation} -f dockerfiles/Dockerfile.snow-chibi-install-test ."
|
sh "docker build --build-arg IMAGE=${DOCKERIMG} --build-arg SCHEME=${implementation} --tag=foreign-c-test-${implementation} -f dockerfiles/Dockerfile.snow-chibi-install-test ."
|
||||||
sh "docker run -v ${WORKSPACE}:/workdir -w /workdir -t foreign-c-test-${implementation} sh -c \"timeout 120 make SCHEME=${implementation} clean force-install && cp tests/hello.scm /tmp/ && cd /tmp && SCHEME=${implementation} printf \"\\n\" | timeout 120 compile-r7rs -o hello hello.scm && printf \"\\n\" | timeout 120 ./hello\""
|
sh "docker run -v ${WORKSPACE}:/workdir -w /workdir -t foreign-c-test-${implementation} sh -c \"timeout 120 make SCHEME=${implementation} clean force-install && cp tests/hello.scm /tmp/ && cd /tmp && COMPILE_R7RS=${implementation} printf \"\\n\" | timeout 120 compile-r7rs -o hello hello.scm && printf \"\\n\" | timeout 120 ./hello\""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
tests.each { test ->
|
tests.each { test ->
|
||||||
|
|
|
||||||
19
Makefile
19
Makefile
|
|
@ -19,7 +19,6 @@ endif
|
||||||
all: build ${TMPDIR}
|
all: build ${TMPDIR}
|
||||||
|
|
||||||
build: README.html
|
build: README.html
|
||||||
make ${SCHEME}
|
|
||||||
snow-chibi package \
|
snow-chibi package \
|
||||||
--version=${VERSION} \
|
--version=${VERSION} \
|
||||||
--authors="Retropikzel" \
|
--authors="Retropikzel" \
|
||||||
|
|
@ -30,7 +29,9 @@ build: README.html
|
||||||
|
|
||||||
install:
|
install:
|
||||||
if [ "${SCHEME}" = "gauche" ]; then \
|
if [ "${SCHEME}" = "gauche" ]; then \
|
||||||
cp -r foreign $(shell gauche-config --sitelibdir)/; \
|
cp -r foreign $(shell gauche-config --syslibdir)/; \
|
||||||
|
mkdir -p $(shell gauche-config --sysarchdir)/foreign/c/lib; \
|
||||||
|
cp -r foreign/c/lib/gauche.so $(shell gauche-config --sysarchdir)/foreign/c/lib/; \
|
||||||
else \
|
else \
|
||||||
snow-chibi --impls=${SCHEME} install foreign-c-${VERSION}.tgz; \
|
snow-chibi --impls=${SCHEME} install foreign-c-${VERSION}.tgz; \
|
||||||
fi
|
fi
|
||||||
|
|
@ -39,7 +40,11 @@ uninstall:
|
||||||
snow-chibi --impls=${SCHEME} remove foreign.c
|
snow-chibi --impls=${SCHEME} remove foreign.c
|
||||||
|
|
||||||
force-install:
|
force-install:
|
||||||
printf "\n" | snow-chibi --impls=${SCHEME} --always-yes install foreign-c-${VERSION}.tgz
|
if [ "${SCHEME}" = "gauche" ]; then \
|
||||||
|
cp -r foreign $(shell gauche-config --sitelibdir)/; \
|
||||||
|
else \
|
||||||
|
printf "\n" | snow-chibi --impls=${SCHEME} --always-yes install foreign-c-${VERSION}.tgz; \
|
||||||
|
fi
|
||||||
|
|
||||||
test-java: ${TMPDIR}/test/libtest.o ${TMPDIR}/test/libtest.so ${TMPDIR}/test/libtest.a
|
test-java: ${TMPDIR}/test/libtest.o ${TMPDIR}/test/libtest.so ${TMPDIR}/test/libtest.a
|
||||||
mkdir -p ${TMPDIR}/test
|
mkdir -p ${TMPDIR}/test
|
||||||
|
|
@ -93,11 +98,13 @@ test-compile-r7rs-wine:
|
||||||
|
|
||||||
test-docker:
|
test-docker:
|
||||||
docker build --build-arg IMAGE=${DOCKERIMG} --build-arg SCHEME=${SCHEME} --tag=foreign-c-test-${SCHEME} -f dockerfiles/Dockerfile.test .
|
docker build --build-arg IMAGE=${DOCKERIMG} --build-arg SCHEME=${SCHEME} --tag=foreign-c-test-${SCHEME} -f dockerfiles/Dockerfile.test .
|
||||||
docker run -it -v "${PWD}:/workdir" -w /workdir -t foreign-c-test-${SCHEME} sh -c "make SCHEME=${SCHEME} TEST=${TEST} test"
|
docker run -it -v "${PWD}:/workdir" -w /workdir -t foreign-c-test-${SCHEME} sh \
|
||||||
|
-c "make SCHEME=${SCHEME} TEST=${TEST} test"
|
||||||
|
|
||||||
test-snow-install-docker:
|
test-install-docker:
|
||||||
docker build --build-arg IMAGE=${DOCKERIMG} --build-arg SCHEME=${SCHEME} --tag=foreign-c-test-${SCHEME} -f dockerfiles/Dockerfile.snow-chibi-install-test .
|
docker build --build-arg IMAGE=${DOCKERIMG} --build-arg SCHEME=${SCHEME} --tag=foreign-c-test-${SCHEME} -f dockerfiles/Dockerfile.snow-chibi-install-test .
|
||||||
docker run -it -v "${PWD}:/workdir" -w /workdir -t foreign-c-test-${SCHEME} sh -c "make SCHEME=${SCHEME} TEST=${TEST} all install"
|
docker run -it -v "${PWD}:/workdir" -w /workdir -t foreign-c-test-${SCHEME} sh \
|
||||||
|
-c "make SCHEME=${SCHEME} clean ${SCHEME} install && cp tests/hello.scm /tmp/ && cd /tmp && COMPILE_R7RS=${SCHEME} compile-r7rs -o hello hello.scm && ./hello"
|
||||||
|
|
||||||
${TMPDIR}/test/libtest.o: tests/c-src/libtest.c
|
${TMPDIR}/test/libtest.o: tests/c-src/libtest.c
|
||||||
mkdir -p ${TMPDIR}/test
|
mkdir -p ${TMPDIR}/test
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,9 @@ RUN apt-get update && apt-get install -y \
|
||||||
git \
|
git \
|
||||||
make \
|
make \
|
||||||
libffi-dev \
|
libffi-dev \
|
||||||
pandoc
|
pandoc \
|
||||||
|
tree
|
||||||
|
RUN mkdir -p ${HOME}/.snow && echo "()" > ${HOME}/.snow/config.scm
|
||||||
COPY --from=retropikzel1/compile-r7rs /opt/compile-r7rs /opt/compile-r7rs
|
COPY --from=retropikzel1/compile-r7rs /opt/compile-r7rs /opt/compile-r7rs
|
||||||
ENV PATH=/opt/compile-r7rs/bin:${PATH}
|
ENV PATH=/opt/compile-r7rs/bin:${PATH}
|
||||||
ARG SCHEME=chibi
|
ARG SCHEME=chibi
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,8 @@ RUN apt-get update && apt-get install \
|
||||||
make \
|
make \
|
||||||
libffi-dev \
|
libffi-dev \
|
||||||
pandoc \
|
pandoc \
|
||||||
libmbedtls-dev
|
libmbedtls-dev \
|
||||||
|
tree
|
||||||
RUN mkdir -p ${HOME}/.snow && echo "()" > ${HOME}/.snow/config.scm
|
RUN mkdir -p ${HOME}/.snow && echo "()" > ${HOME}/.snow/config.scm
|
||||||
COPY --from=retropikzel1/compile-r7rs /opt/compile-r7rs /opt/compile-r7rs
|
COPY --from=retropikzel1/compile-r7rs /opt/compile-r7rs /opt/compile-r7rs
|
||||||
ENV PATH=/opt/compile-r7rs/bin:${PATH}
|
ENV PATH=/opt/compile-r7rs/bin:${PATH}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue