ASDF3 へのアップデート → Clackインストール

どうやったらASDFのアップデートができるのかうろうろ。
以下のページを発見しました。

common-lisp.net

git clone して make 。。。かな?

~/opt$ git clone https://gitlab.common-lisp.net/asdf/asdf.git
~/opt$ cd asdf/

~/opt/asdf$ make
mkdir -p build
rm -f build/asdf.lisp
cat header.lisp uiop/package.lisp uiop/common-lisp.lisp uiop/utility.lisp uiop/version.lisp uiop/os.lisp uiop/pathname.lisp uiop/filesystem.lisp uiop/stream.lisp uiop/image.lisp uiop/lisp-build.lisp uiop/launch-program.lisp uiop/run-program.lisp uiop/configuration.lisp uiop/backward-driver.lisp uiop/driver.lisp upgrade.lisp session.lisp component.lisp operation.lisp system.lisp system-registry.lisp action.lisp lisp-action.lisp find-component.lisp forcing.lisp plan.lisp operate.lisp find-system.lisp parse-defsystem.lisp bundle.lisp concatenate-source.lisp package-inferred-system.lisp output-translations.lisp source-registry.lisp backward-internals.lisp backward-interface.lisp interface.lisp user.lisp footer.lisp > build/asdf.lisp

~/opt/asdf$ cp build/asdf.lisp ../ccl/tools/

どうやればいいかものすごく迷ったけど
わかればとても簡単でした。
※ せっかくパケージマネージャがあるんだからもうちょっとなんかやり方があってもよかった気が・・・

早速Clackインストール

$ ccl
Welcome to Clozure Common Lisp Version 1.9-r15757  (LinuxX8664)!
? (asdf:asdf-version)
"3.2.1"

<Verupできてる!>

(ql:update-all-dists)
1 dist to check.
You already have the latest version of "quicklisp": 2017-08-30.
NIL

<最新化できてる>

? (ql:quickload :clack)

<インストール開始。いっぱいなんかでる>

[package clack.handler]...........................
[package clack]...................................
[package clack]..
(:CLACK)

?

無事、インストールできたようです。
早速Clackのサンプルを動かします

~$ cat clack-sample.lisp 
(clack:clackup
    #'(lambda (req)
	      (declare (ignore req))
	            '(200 nil ("Hello, Clack!"))))


~$ccl

? (load "~/clack-sample.lisp")
Hunchentoot server is started.
Listening on localhost:5000.
#P"/clack-sample.lisp"
? 

別のターミナルでHTTPが上がっているか確認。

$ curl -vvv localhost:5000
* Rebuilt URL to: localhost:5000/
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 5000 (#0)
> GET / HTTP/1.1
> Host: localhost:5000
> User-Agent: curl/7.52.1
> Accept: */*
> 
< HTTP/1.1 200 OK
< Date: Fri, 01 Sep 2017 23:51:19 GMT
< Server: Hunchentoot 1.2.37
< Transfer-Encoding: chunked
< Content-Type: text/html; charset=utf-8
< 
* Curl_http_done: called premature == 0
* Connection #0 to host localhost left intact
Hello, Clack!

かんぺき!