variables: download_url: "https://common-lisp.net/project/cmucl/downloads/snapshots/2021/07" version: "2021-07-x86" bootstrap: "-B boot-2021-07-1 -B boot-2021-07-2" stages: - install - build - test - ansi-test - benchmark cache: linux:install: stage: install tags: - linux artifacts: paths: - snapshot/ script: - wget -nv $download_url/cmucl-$version-linux.tar.bz2 - wget -nv $download_url/cmucl-$version-linux.extra.tar.bz2 - mkdir snapshot - (cd snapshot; tar xjf ../cmucl-$version-linux.tar.bz2; tar xjf ../cmucl-$version-linux.extra.tar.bz2) linux:build: stage: build tags: - linux artifacts: paths: - dist/ - linux-2/*.log - linux-3/*.log - linux-4/*.log needs: - job: linux:install artifacts: true script: # Do cross compile first #- bin/create-target.sh xtarget x86_linux_clang #- bin/create-target.sh xcross x86_linux_clang #- bin/cross-build-world.sh -crl -B boot-2020-04-1 xtarget xcross src/tools/cross-scripts/cross-x86-x86.lisp snapshot/bin/lisp # Regular build using the cross-compiled result or snapshot - bin/build.sh $bootstrap -R -C "x86_linux_clang" -o snapshot/bin/lisp - bin/make-dist.sh -I dist linux-4 linux:test: stage: test tags: - linux artifacts: paths: - ansi-test/test.out - test.log needs: # Needs artifacts from build (dist/) - job: linux:build artifacts: true script: - bin/run-tests.sh -l dist/bin/lisp 2>&1 | tee test.log linux:ansi-test: stage: ansi-test tags: - linux artifacts: paths: - ansi-test/test.out needs: # Needs artifacts from build (dist/) - job: linux:build artifacts: true before_script: - git clone https://gitlab.common-lisp.net/cmucl/ansi-test.git - (cd ansi-test; git checkout rtoy-cmucl-expected-failures) script: - cd ansi-test - make LISP="../dist/bin/lisp -batch -noinit -nositeinit" # There should be no unexpected successes or failures; check these separately. - grep -a 'No unexpected successes' test.out && grep -a 'No unexpected failures' test.out linux:benchmark: stage: benchmark tags: - linux artifacts: paths: - benchmarks/cl-bench/results needs: # Needs artifacts from install (snapshot/) and build (dist/) - job: linux:install artifacts: true - job: linux:build script: - cd benchmarks/cl-bench - mkdir tmp - CMUCL=../../snapshot/bin/lisp ./run-cmucl.sh - CMUCL=../../dist/bin/lisp ./run-cmucl.sh - ../../snapshot/bin/lisp -load report osx:install: stage: install tags: - osx artifacts: paths: - snapshot/ script: - /opt/local/bin/curl -o cmucl-$version-darwin.tar.bz2 $download_url/cmucl-$version-darwin.tar.bz2 - mkdir snapshot - (cd snapshot; tar xjf ../cmucl-$version-darwin.tar.bz2) osx:build: stage: build tags: - osx artifacts: paths: - dist/ - darwin-2/*.log - darwin-3/*.log - darwin-4/*.log needs: - job: osx:install artifacts: true script: # Do cross compile first #- bin/create-target.sh xtarget x86_darwin #- bin/create-target.sh xcross x86_darwin #- bin/cross-build-world.sh -crl -B boot-2020-04-1 xtarget xcross src/tools/cross-scripts/cross-x86-x86.lisp snapshot/bin/lisp # Regular build using the cross-compiled result or snapshot - bin/build.sh $bootstrap -R -C "" -o snapshot/bin/lisp - bin/make-dist.sh -I dist darwin-4 osx:test: stage: test tags: - osx artifacts: paths: - test.log needs: # Needs artifacts from build (dist/) - job: osx:build artifacts: true script: - bin/run-tests.sh -l dist/bin/lisp 2>&1 | tee test.log osx:ansi-test: stage: ansi-test tags: - osx artifacts: paths: - ansi-test/test.out needs: # Needs artifacts from build (dist/) - job: osx:build artifacts: true before_script: - /opt/local/bin/git clone https://gitlab.common-lisp.net/cmucl/ansi-test.git - (cd ansi-test; /opt/local/bin/git checkout rtoy-cmucl-expected-failures) script: - cd ansi-test - make LISP="../dist/bin/lisp -batch -noinit -nositeinit" # There should be no unexpected successes or failures; check these separately. - grep -a 'No unexpected successes' test.out && grep -a 'No unexpected failures' test.out osx:benchmark: stage: benchmark tags: - osx artifacts: paths: - benchmarks/cl-bench/results needs: # Needs artifacts from install (snapshot/) and build (dist/) - job: osx:install artifacts: true - job: osx:build script: - cd benchmarks/cl-bench - mkdir tmp - CMUCL=../../snapshot/bin/lisp ./run-cmucl.sh - CMUCL=../../dist/bin/lisp ./run-cmucl.sh - ../../snapshot/bin/lisp -load report