b06a9c52c8bbacfcdf02dce6b4df87926df4c8d2
[clnl] / bin / buildtravisexec.sh
1 #!/bin/bash
2
3 # This script builds a verion of sbcl with the libraries pre loaded
4 # for ease of travis.  Remember to update bin/buildosxsbcl when you
5 # update this.
6
7 mkdir -p tmp/sbcl
8
9 cwd=$PWD
10 ( cd tmp &&
11   tar jxf ../deps/tarpit/sbcl-1.2.6-x86-64-linux-binary.tar.bz2 &&
12   cd sbcl-1.2.6-x86-64-linux/ &&
13   SBCL_HOME="" INSTALL_ROOT=$cwd/tmp/sbcl/ bash install.sh )
14
15 mkdir -p tmp/deps/
16
17 ( cd tmp/deps &&
18   tar zxf ../../deps/tarpit/3b-cl-opengl-993d627.tar.gz &&
19   tar zxf ../../deps/tarpit/alexandria-b1c6ee0.tar.gz &&
20   tar zxf ../../deps/tarpit/babel_0.5.0.tar.gz &&
21   tar zxf ../../deps/tarpit/cffi_0.15.0.tar.gz &&
22   tar zxf ../../deps/tarpit/cl-ppcre.tar.gz &&
23   tar zxf ../../deps/tarpit/ironclad.tar.gz &&
24   tar zxf ../../deps/tarpit/mt19937-latest.tar.gz &&
25   tar zxf ../../deps/tarpit/nibbles-v0.12.tar.gz &&
26   tar zxf ../../deps/tarpit/trivial-features_0.8.tar.gz &&
27   tar zxf ../../deps/tarpit/cl-charms-9bb94ef.tar.gz &&
28   tar zxf ../../deps/tarpit/style-checker_0.1.tar.gz &&
29   tar zxf ../../deps/tarpit/docgen_0.1.tar.gz &&
30   ln -s cl-ppcre-2.0.10/cl-ppcre.asd . &&
31   ln -s ironclad_0.33.0/ironclad.asd . &&
32   ln -s mt19937-1.1.1/mt19937.asd . &&
33   ln -s nibbles-0.12/nibbles.asd . &&
34   ln -s 3b-cl-opengl-993d627/cl-glut.asd . &&
35   ln -s 3b-cl-opengl-993d627/cl-opengl.asd . &&
36   ln -s alexandria-b1c6ee0/alexandria.asd . &&
37   ln -s babel_0.5.0/babel-streams.asd . &&
38   ln -s babel_0.5.0/babel.asd . &&
39   ln -s cffi_0.15.0/cffi-examples.asd . &&
40   ln -s cffi_0.15.0/cffi.asd . &&
41   ln -s cffi_0.15.0/cffi-libffi.asd . &&
42   ln -s cffi_0.15.0/cffi-grovel.asd . &&
43   ln -s cffi_0.15.0/cffi-uffi-compat.asd . &&
44   ln -s trivial-features_0.8/trivial-features.asd . &&
45   ln -s cl-charms/cl-charms.asd . &&
46   ln -s style-checker_0.1/style-checker.asd . &&
47   ln -s docgen_0.1/docgen.asd .
48 )
49
50 SBCL_HOME="" tmp/sbcl/bin/sbcl --core tmp/sbcl/lib/sbcl/sbcl.core \
51   --eval "(require 'asdf)" \
52   --eval '(setf asdf:*central-registry* (list #p"tmp/deps/"))' \
53   --eval "(asdf:load-system :cl-ppcre)" \
54   --eval "(asdf:load-system :mt19937)" \
55   --eval "(asdf:load-system :ironclad)" \
56   --eval "(asdf:load-system :cl-opengl)" \
57   --eval "(asdf:load-system :cl-glut)" \
58   --eval "(asdf:load-system :cl-charms)" \
59   --eval "(asdf:load-system :style-checker)" \
60   --eval "(asdf:load-system :docgen)" \
61   --eval "(asdf:clear-output-translations)" \
62   --eval '(sb-ext:save-lisp-and-die "travissbcl" :executable t)' \
63
64 chmod +x travissbcl
65 travisname=travissbcl-$(git rev-parse --short HEAD)
66 mv travissbcl $travisname
67
68 echo "You should upload via the command: scp $travisname nami:/opt/travis/sbcls/clnl/"
69 echo "You should also set travisname in .travis.yml to $travisname"
70
71 rm -rf tmp