Add travis executable builder
authorFrank Duncan <frank@kank.net>
Wed, 1 Jul 2015 21:26:57 +0000 (16:26 -0500)
committerFrank Duncan <frank@kank.net>
Wed, 1 Jul 2015 21:40:12 +0000 (16:40 -0500)
Former-commit-id: 1de4ce24b0cb99bf630f634054413e1b58c3c594

17 files changed:
.travis.yml
bin/buildtravisexec.sh [new file with mode: 0755]
bin/nl [new file with mode: 0755]
bin/run-nl [deleted file]
bin/run.lisp
bin/test.lisp
bin/travis.lisp [new file with mode: 0644]
deps/clnl-test.internal.asd [new symlink]
deps/clnl.internal.asd [new symlink]
deps/tarpit/3b-cl-opengl-993d627.tar.gz [new file with mode: 0644]
deps/tarpit/alexandria-b1c6ee0.tar.gz [new file with mode: 0644]
deps/tarpit/babel_0.5.0.tar.gz [new file with mode: 0644]
deps/tarpit/cffi_0.15.0.tar.gz [new file with mode: 0644]
deps/travissbcl.REMOVED.git-id [new file with mode: 0644]
src/main/clnl.asd
src/test/clnl-test.asd
src/test/main.lisp

index edd65c89d4b20c391f19a79f8c3e086e0ef02fa2..3740e0d7f90b70f69304cee9d1ac98f1c73f0fa6 100644 (file)
@@ -1,6 +1,2 @@
-before_install:
-  - bin/setuptravis.sh
-  - export PATH="$PATH:$HOME/sbcl/bin"
-  - export SBCL_HOME="$HOME/sbcl/lib/sbcl/"
 script:
-  - sbcl --script bin/test.lisp
+  - deps/travissbcl --script bin/travis.lisp
diff --git a/bin/buildtravisexec.sh b/bin/buildtravisexec.sh
new file mode 100755 (executable)
index 0000000..eb951f5
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+mkdir -p tmp/sbcl
+
+cwd=$PWD
+( cd tmp &&
+  tar jxf ../deps/tarpit/sbcl-1.2.6-x86-64-linux-binary.tar.bz2 &&
+  cd sbcl-1.2.6-x86-64-linux/ &&
+  INSTALL_ROOT=$cwd/tmp/sbcl/ bash install.sh )
+
+mkdir -p tmp/deps/
+
+( cd tmp/deps &&
+  tar zxf ../../deps/tarpit/cl-ppcre.tar.gz &&
+  tar zxf ../../deps/tarpit/ironclad.tar.gz &&
+  tar zxf ../../deps/tarpit/mt19937-latest.tar.gz &&
+  tar zxf ../../deps/tarpit/nibbles-v0.12.tar.gz &&
+  ln -s cl-ppcre-2.0.10/cl-ppcre.asd . &&
+  ln -s ironclad_0.33.0/ironclad.asd . &&
+  ln -s mt19937-1.1.1/mt19937.asd . &&
+  ln -s nibbles-0.12/nibbles.asd .
+)
+
+
+tmp/sbcl/bin/sbcl --core tmp/sbcl/lib/sbcl/sbcl.core \
+  --eval "(require 'asdf)" \
+  --eval '(setf asdf:*central-registry* (list #p"tmp/deps/"))' \
+  --eval "(asdf:load-system :cl-ppcre)" \
+  --eval "(asdf:load-system :mt19937)" \
+  --eval "(asdf:load-system :ironclad)" \
+  --eval "(asdf:clear-output-translations)" \
+  --eval '(sb-ext:save-lisp-and-die "deps/travissbcl" :executable t)' \
+
+chmod +x deps/travissbcl
+
+rm -rf tmp
diff --git a/bin/nl b/bin/nl
new file mode 100755 (executable)
index 0000000..c14aa97
--- /dev/null
+++ b/bin/nl
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+rlwrap sbcl --script bin/run.lisp
diff --git a/bin/run-nl b/bin/run-nl
deleted file mode 100755 (executable)
index c14aa97..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-rlwrap sbcl --script bin/run.lisp
index 725e8c2c2e0d9e2b5ecc9e6b4bba2af719d00626..481cbbec64fb32d6dfbb72c3e324163d0f50ea33 100644 (file)
@@ -1,4 +1,5 @@
+(setf *compile-print* nil)
 (require 'asdf)
-(setf asdf:*central-registry* (list #p"deps/"))
+(push #p"deps/" asdf:*central-registry*)
 (asdf:load-system :clnl)
 (clnl:run)
index b3c912a1e8fa89ac744fa9f46a098fb6465baf3a..2884ba9c1629fc87c059b60b595e26d3aedb0250 100644 (file)
@@ -1,3 +1,4 @@
+(setf *compile-print* nil)
 (require 'asdf)
 (setf asdf:*central-registry* (list #p"deps/"))
 (asdf:load-system :clnl-test)
diff --git a/bin/travis.lisp b/bin/travis.lisp
new file mode 100644 (file)
index 0000000..42ff833
--- /dev/null
@@ -0,0 +1,6 @@
+(setf *compile-print* nil)
+(require 'asdf)
+(setf asdf:*central-registry* (list #p"deps/"))
+(asdf:load-system :clnl.internal)
+(asdf:load-system :clnl-test.internal)
+(sb-ext:quit :unix-status (if (clnl-test:run-all-tests) 0 1))
diff --git a/deps/clnl-test.internal.asd b/deps/clnl-test.internal.asd
new file mode 120000 (symlink)
index 0000000..3c3cf0e
--- /dev/null
@@ -0,0 +1 @@
+../src/test/clnl-test.asd
\ No newline at end of file
diff --git a/deps/clnl.internal.asd b/deps/clnl.internal.asd
new file mode 120000 (symlink)
index 0000000..2337742
--- /dev/null
@@ -0,0 +1 @@
+../src/main/clnl.asd
\ No newline at end of file
diff --git a/deps/tarpit/3b-cl-opengl-993d627.tar.gz b/deps/tarpit/3b-cl-opengl-993d627.tar.gz
new file mode 100644 (file)
index 0000000..3a394a9
Binary files /dev/null and b/deps/tarpit/3b-cl-opengl-993d627.tar.gz differ
diff --git a/deps/tarpit/alexandria-b1c6ee0.tar.gz b/deps/tarpit/alexandria-b1c6ee0.tar.gz
new file mode 100644 (file)
index 0000000..5db2c79
Binary files /dev/null and b/deps/tarpit/alexandria-b1c6ee0.tar.gz differ
diff --git a/deps/tarpit/babel_0.5.0.tar.gz b/deps/tarpit/babel_0.5.0.tar.gz
new file mode 100644 (file)
index 0000000..370aaca
Binary files /dev/null and b/deps/tarpit/babel_0.5.0.tar.gz differ
diff --git a/deps/tarpit/cffi_0.15.0.tar.gz b/deps/tarpit/cffi_0.15.0.tar.gz
new file mode 100644 (file)
index 0000000..2c84890
Binary files /dev/null and b/deps/tarpit/cffi_0.15.0.tar.gz differ
diff --git a/deps/travissbcl.REMOVED.git-id b/deps/travissbcl.REMOVED.git-id
new file mode 100644 (file)
index 0000000..20b7632
--- /dev/null
@@ -0,0 +1 @@
+733ddb17df353334504f8eece18fd73419604f22
\ No newline at end of file
index b547601377778e7b0769c2548602dcef2eeb92c9..a17f3ee048b7ac384ce0771f28245535aca2abca 100644 (file)
@@ -1,8 +1,13 @@
-(asdf:defsystem clnl
-  :name "Experiment"
-  :version "0.0.1"
-  :maintainer "Frank Duncan (frank@kank.com)"
-  :author "Frank Duncan (frank@kank.com)"
+; The systems are split up into two because travis will run more smoothly
+; if we use a custom built sbcl that has all the deps pre-loaded since
+; we are sure those will work just fine :)
+;
+; You should link to this file in your systems directory, or however you
+; handle your asdf configurations.  Then just (asdf:load-system :clnl)
+;
+; There's probably a better way, but I don't know it
+
+(asdf:defsystem clnl.internal
   :serial t
   :components ((:file "package")
                (:file "lex")
                (:file "nvm")
                (:file "transpile")
                (:file "random")
-               (:file "main"))
-  :depends-on (:cl-ppcre :mt19937))
+               (:file "main")))
+
+(asdf:defsystem clnl
+  :name "Experiment"
+  :version "0.0.1"
+  :maintainer "Frank Duncan (frank@kank.com)"
+  :author "Frank Duncan (frank@kank.com)"
+  :depends-on (:cl-ppcre :mt19937 :clnl.internal))
index 156739f12a34cbee4f1961e6f5509108e346010c..a4c082064fadca1bd675a3d084e581167cb91910 100644 (file)
@@ -1,3 +1,9 @@
+; For why this is the way it is, see src/main/clnl.asd
+(asdf:defsystem clnl-test.internal
+  :components ((:file "package")
+               (:file "main")
+               (:file "simpletests")))
+
 (asdf:defsystem clnl-test
   :name "Experiment Tests"
   :version "0.0.1"
@@ -7,4 +13,4 @@
   :components ((:file "package")
                (:file "main")
                (:file "simpletests"))
-  :depends-on (:clnl :ironclad))
+  :depends-on (:ironclad :clnl clnl-test.internal))
index d24b337f02342fa21f3d62875e9ef623c29b23be..b14aa93bec33a4f64812bcd60bebda352f37d525 100644 (file)
@@ -19,7 +19,7 @@
   final-result))
 
 (defun run-all-tests ()
- (format t "~%Here we goooooooo~%")
+ (format t "~%~c[1;33mHere we goooooooo~c[0m~%" #\Esc #\Esc)
  (run-tests (reverse *tests*)))
   
 (defun run-tests-matching (match)