mirror of
https://github.com/roswell/roswell.git
synced 2026-09-10 07:16:17 -04:00
try verison up sigsegv
This commit is contained in:
parent
c3c123aba3
commit
03b2cf7c1c
|
|
@ -1,15 +1,18 @@
|
|||
(roswell:include "util-install-quicklisp")
|
||||
(defpackage :roswell.install.sigsegv+
|
||||
(:use :cl :roswell.install :roswell.util :roswell.locations))
|
||||
(:use :cl :roswell.install :roswell.util :roswell.locations)
|
||||
(:export :*sigsegv-version*))
|
||||
(in-package :roswell.install.sigsegv+)
|
||||
|
||||
(defvar *sigsegv-version* "2.10")
|
||||
(defvar *sigsegv-version* "2.11")
|
||||
|
||||
(defun sigsegv-setup (argv)
|
||||
(let* ((uri (format nil "~Alibsigsegv-~A.tar.gz" (sigsegv-uri) *sigsegv-version*))
|
||||
(pos (position #\/ uri :from-end t))
|
||||
(path (merge-pathnames (format nil "archives/~A" (subseq uri (1+ pos))) (homedir)))
|
||||
(expand-dir (merge-pathnames (format nil "src/libsigsegv-~A/" *sigsegv-version*) (homedir))))
|
||||
(expand-dir (merge-pathnames (format nil "src/libsigsegv-~A/" *sigsegv-version*) (homedir)))
|
||||
(prefix (merge-pathnames (format nil "lib/~A/~A/~A/~A/" (uname-m) (uname) "sigsegv" *sigsegv-version*) (homedir)))
|
||||
(logdir (ensure-directories-exist (merge-pathnames "impls/log/sigsegv/" (homedir)))))
|
||||
(if (or (not (probe-file path))
|
||||
(opt "download.force"))
|
||||
(progn
|
||||
|
|
@ -17,35 +20,32 @@
|
|||
(force-output *error-output*)
|
||||
(download uri path)
|
||||
(format *error-output* " done.~%"))
|
||||
(format *error-output* "~&Skip downloading ~A.~%Specify 'download.force=t' to download it again.~%"
|
||||
uri))
|
||||
(format *error-output* "~&Skip downloading ~A.~%Specify 'download.force=t' to download it again.~%" uri))
|
||||
(expand path (ensure-directories-exist (merge-pathnames "src/" (homedir))))
|
||||
(chdir expand-dir)
|
||||
(format t "~&configure~%")
|
||||
(with-open-file (out (ensure-directories-exist
|
||||
(merge-pathnames "impls/log/sigsegv/config.log" (homedir)))
|
||||
(with-open-file (out (merge-pathnames "config.log" logdir)
|
||||
:direction :output :if-exists :append :if-does-not-exist :create)
|
||||
(format out "~&--~&~A~%" (date))
|
||||
(let* ((cmd (format nil "./configure '--prefix=~A'"
|
||||
(ensure-directories-exist(merge-pathnames (format nil "lib/~A/~A/~A/~A/" (uname-m) (uname) "sigsegv" *sigsegv-version*) (homedir)))))
|
||||
(let* ((cmd (format nil "~A ./configure '--prefix=~A'" (sh) (ensure-directories-exist prefix)))
|
||||
(*standard-output* (make-broadcast-stream out #+sbcl(make-instance 'count-line-stream))))
|
||||
(chdir expand-dir)
|
||||
(uiop/run-program:run-program cmd :output t :ignore-error-status t)))
|
||||
(uiop/run-program:run-program cmd :output t :error-output t :ignore-error-status t)))
|
||||
(format t "~&make~%")
|
||||
(with-open-file (out (ensure-directories-exist
|
||||
(merge-pathnames "impls/log/sigsegv/make.log" (homedir)))
|
||||
(with-open-file (out (merge-pathnames "make.log" logdir)
|
||||
:direction :output :if-exists :append :if-does-not-exist :create)
|
||||
(format out "~&--~&~A~%" (date))
|
||||
(let* ((cmd (format nil "make"))
|
||||
(*standard-output* (make-broadcast-stream out #+sbcl(make-instance 'count-line-stream))))
|
||||
(uiop/run-program:run-program cmd :output t :ignore-error-status t)))
|
||||
(uiop/run-program:run-program cmd :output t :error-output t :ignore-error-status t)))
|
||||
(format t "~&install~%")
|
||||
(with-open-file (out (merge-pathnames "impls/log/sigsegv/install.log" (homedir))
|
||||
(with-open-file (out (merge-pathnames "install.log" logdir)
|
||||
:direction :output :if-exists :append :if-does-not-exist :create)
|
||||
(format out "~&--~&~A~%" (date))
|
||||
(let ((*standard-output* (make-broadcast-stream
|
||||
out #+sbcl(make-instance 'count-line-stream))))
|
||||
(uiop/run-program:run-program "make install" :output t))
|
||||
(uiop/run-program:run-program "make install" :output t :error-output t))
|
||||
(format *error-output* "done.~%")))
|
||||
(setf (config "sigsegv.version") *sigsegv-version*)
|
||||
(cons t argv))
|
||||
|
||||
(defun sigsegv-help (argv)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
(roswell:include '("util-install-quicklisp"
|
||||
"install+ffcall"))
|
||||
"install+ffcall"
|
||||
"install+sigsegv"))
|
||||
(defpackage :roswell.install.clisp
|
||||
(:use :cl :roswell.install :roswell.util :roswell.locations
|
||||
:roswell.install.ffcall+))
|
||||
:roswell.install.ffcall+
|
||||
:roswell.install.sigsegv+))
|
||||
(in-package :roswell.install.clisp)
|
||||
|
||||
(defun clisp-get-version ()
|
||||
|
|
@ -62,7 +64,7 @@
|
|||
(download uri file)
|
||||
(chdir (opt "src"))
|
||||
(format t "~%Applying patch:~%")
|
||||
(uiop/run-program:run-program (format nil "git apply ~A" file) :output t))
|
||||
(uiop/run-program:run-program (format nil "git apply ~A" file) :output t :error-output t))
|
||||
(cons t argv))
|
||||
|
||||
(defun clisp-config (argv)
|
||||
|
|
@ -75,7 +77,7 @@
|
|||
(format out "~&--~&~A~%" (date))
|
||||
(let* ((src (opt "src"))
|
||||
(cmd (format nil "./configure --with-libsigsegv-prefix=~A ~A '--prefix=~A'"
|
||||
(merge-pathnames (format nil "lib/~A/~A/~A/~A" (uname-m) (uname) "sigsegv" "2.10") (homedir))
|
||||
(merge-pathnames (format nil "lib/~A/~A/~A/~A" (uname-m) (uname) "sigsegv" (or (config "sigsegv.version") *sigsegv-version*)) (homedir))
|
||||
(or #+linux (format nil "--with-libffcall-prefix=~A"
|
||||
(merge-pathnames (format nil "lib/~A/~A/~A/~A" (uname-m) (uname) "ffcall" (or (config "ffcall.version") *ffcall-version*))
|
||||
(homedir)))
|
||||
|
|
@ -83,7 +85,7 @@
|
|||
(opt "prefix")))
|
||||
(*standard-output* (make-broadcast-stream out #+sbcl(make-instance 'count-line-stream))))
|
||||
(chdir src)
|
||||
(uiop/run-program:run-program cmd :output t :ignore-error-status t)))
|
||||
(uiop/run-program:run-program cmd :output t :error-output t :ignore-error-status t)))
|
||||
(cons t argv))
|
||||
|
||||
(defun clisp-make (argv)
|
||||
|
|
@ -98,7 +100,7 @@
|
|||
(cmd (format nil "ulimit -s 16384 && make"))
|
||||
(*standard-output* (make-broadcast-stream out #+sbcl(make-instance 'count-line-stream))))
|
||||
(chdir src)
|
||||
(uiop/run-program:run-program cmd :output t :ignore-error-status t)))
|
||||
(uiop/run-program:run-program cmd :output t :error-output t :ignore-error-status t)))
|
||||
(cons t argv))
|
||||
|
||||
(defun clisp-install (argv)
|
||||
|
|
@ -114,7 +116,7 @@
|
|||
(format out "~&--~&~A~%" (date))
|
||||
(let ((*standard-output* (make-broadcast-stream
|
||||
out #+sbcl(make-instance 'count-line-stream))))
|
||||
(uiop/run-program:run-program "make install" :output t)))
|
||||
(uiop/run-program:run-program "make install" :output t :error-output t)))
|
||||
(format *error-output* "done.~%"))
|
||||
(cons t argv))
|
||||
|
||||
|
|
@ -126,7 +128,7 @@
|
|||
(*standard-output* (make-broadcast-stream
|
||||
out #+sbcl(make-instance 'count-line-stream))))
|
||||
(uiop/run-program:run-program
|
||||
(list (sh) "-lc" (format nil "cd ~S;make clean" src)) :output t))
|
||||
(list (sh) "-lc" (format nil "cd ~S;make clean" src)) :output t :error-output t))
|
||||
(format t "done.~%"))
|
||||
(cons t argv))
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue