implement 'ros dist add'

This commit is contained in:
SANO Masatoshi 2018-09-03 19:39:53 +09:00
parent 3155030c0d
commit 2a545fa12d
2 changed files with 15 additions and 8 deletions

View file

@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
#|-*- mode:lisp -*-|# #|-*- mode:lisp -*-|#
#| #|
exec ros +Q +A -- $0 "$@" exec ros -Q +A -- $0 "$@"
|# |#
(progn ;;init forms (progn ;;init forms
#-asdf(ros:ensure-asdf :version nil) #-asdf(ros:ensure-asdf :version nil)
@ -49,8 +49,8 @@ exec ros +Q +A -- $0 "$@"
(consume (consume
argv argv
(("-o" opt) (("-o" opt)
(uiop:chdir (read-call "uiop:chdir"
(setf *default-pathname-defaults* (truename opt))) (setf *default-pathname-defaults* (truename opt)))
(setf out t)) (setf out t))
(("-o-") (("-o-")
(setf out nil)) (setf out nil))
@ -62,19 +62,19 @@ exec ros +Q +A -- $0 "$@"
(setf asdf nil)) (setf asdf nil))
((:in file) ((:in file)
(if asdf (if asdf
(uiop:chdir (read-call "uiop:chdir"
(setf *default-pathname-defaults* (setf *default-pathname-defaults*
(merge-pathnames (format nil "lisp/asdf/~A/" file) (homedir)))) (merge-pathnames (format nil "lisp/asdf/~A/" file) (homedir))))
(when (ros:opt "asdf.version") (when (ros:opt "asdf.version")
(ros:asdf))) (ros:asdf)))
(funcall (read-from-string "asdf:compile-file*") (funcall (read-from-string "asdf:compile-file*")
(if asdf (if asdf
"asdf.lisp" (merge-pathnames "asdf.lisp" *default-pathname-defaults*)
file) file)
:output-file :output-file
(make-pathname (make-pathname
:defaults (if (or out asdf) :defaults (if (or out asdf)
(uiop:getcwd) *default-pathname-defaults*
(fasl-dir)) (fasl-dir))
:name (if asdf :name (if asdf
"asdf" "asdf"

7
lisp/dist-add.lisp Normal file
View file

@ -0,0 +1,7 @@
(defpackage :roswell.dist.add
(:use :cl))
(in-package :roswell.dist.add)
(defun add (&rest r)
(dolist (elm (rest r))
(ql-dist:install-dist elm :prompt nil)))