Change build system - clic - Clic is an command line interactive client for gopher written in Common LISP
HTML git clone git://bitreich.org/clic/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/clic/
DIR Log
DIR Files
DIR Refs
DIR Tags
DIR README
DIR LICENSE
---
DIR commit 351cdba6f1b01fe686a8e30cd3fbc745266c3766
DIR parent b6628df1755cc349aeff1650b87e563776989305
HTML Author: Solene Rapenne <solene@perso.pw>
Date: Fri, 1 Mar 2019 12:47:04 +0100
Change build system
Diffstat:
M 3rdparties/bundle-info.sexp | 4 ++--
D 3rdparties/local-projects/.exists | 0
M 3rdparties/software/uiop-3.3.2/uio… | 2 +-
M Makefile | 4 ++--
A clic.asd | 13 +++++++++++++
M clic.lisp | 12 ++----------
M make-binary.lisp | 24 +++++++++++-------------
M make-bundle.lisp | 2 +-
8 files changed, 32 insertions(+), 29 deletions(-)
---
DIR diff --git a/3rdparties/bundle-info.sexp b/3rdparties/bundle-info.sexp
@@ -1,5 +1,5 @@
-(:CREATION-TIME "2019-02-28T17:28:32Z" :REQUESTED-SYSTEMS ("usocket" "cl+ssl")
- :LISP-INFO
+(:CREATION-TIME "2019-03-01T11:39:38Z" :REQUESTED-SYSTEMS
+ ("usocket" "cl+ssl" "asdf") :LISP-INFO
(:MACHINE-INSTANCE "solene.perso.local" :MACHINE-TYPE "amd64" :MACHINE-VERSION
NIL :LISP-IMPLEMENTATION-TYPE "ECL" :LISP-IMPLEMENTATION-VERSION "16.1.3")
:QUICKLISP-INFO
DIR diff --git a/3rdparties/local-projects/.exists b/3rdparties/local-projects/.exists
DIR diff --git a/3rdparties/software/uiop-3.3.2/uiop.asd b/3rdparties/software/uiop-3.3.2/uiop.asd
@@ -44,7 +44,7 @@ you already have a matching UIOP loaded."
(:file "image" :depends-on ("stream"))
(:file "lisp-build" :depends-on ("image"))
(:file "launch-program" :depends-on ("stream"))
- (:file "run-program" :depends-on ("launch-program"))
+ (:file "run-program" :depends-on ("launch-program" "version"))
(:file "configuration" :depends-on ("image"))
(:file "backward-driver" :depends-on ("lisp-build" "run-program" "configuration" "version"))
(:file "driver" :depends-on ("backward-driver"))))
DIR diff --git a/Makefile b/Makefile
@@ -11,8 +11,8 @@ MANDIR = ${PREFIX}/share/man
all: ${BIN}
-${BIN}: clic.lisp make-binary.lisp
- ecl -load make-binary.lisp
+${BIN}: clic.lisp clic.asd make-binary.lisp
+ ecl -norc -load make-binary.lisp
install: ${BIN}
@echo installing executable to "${DESTDIR}${PREFIX}/bin"
DIR diff --git a/clic.asd b/clic.asd
@@ -0,0 +1,13 @@
+;;(defpackage :clic
+;; (:use :cl :asdf)
+;; (:export #:main))
+;;
+;;(in-package :clic)
+
+(defsystem "clic"
+ :description "Command Line Interface Client"
+ :version "1.1.1"
+ :author "Solene Rapenne <solene@perso.pw>"
+ :licence "MIT"
+ :depends-on (:usocket :cl+ssl)
+ :components ((:file "clic")))
DIR diff --git a/clic.lisp b/clic.lisp
@@ -1,12 +1,4 @@
-;;; let's hide the loading
-(let ((*standard-output* (make-broadcast-stream)))
- (require 'asdf)
- #+ecl
- (require 'sockets))
-
-(load "3rdparties/bundle.lisp")
-(require :cl+ssl)
-(require :usocket)
+(in-package :cl-user)
;;;; C binding to get terminal informations
#+ecl
@@ -733,7 +725,7 @@
(let ((last-page (car *history*)))
(format t "~a~agopher://~a:~a/~a~a (~as, ~aKb) / (p)rev (r)edisplay (h)istory : "
(if *kiosk-mode* "KIOSK " "")
- (if (location-tls last-page) "**TLS** " " UNSECURE ")
+ (if (location-tls last-page) "**TLS** " "UNSECURE ")
(location-host last-page)
(location-port last-page)
(location-type last-page)
DIR diff --git a/make-binary.lisp b/make-binary.lisp
@@ -1,17 +1,15 @@
-;; ecl produces a linked binary to ecl shared library
(load "3rdparties/bundle.lisp")
-(require 'usocket)
-(require 'cl+ssl)
-(require 'asdf)
-(require 'cmp)
+(require :asdf)
-(progn
- (compile-file "clic.lisp" :system-p t)
- (c:build-program "clic"
- :prologue-code '(ext:set-signal-handler ext:+sigint+ nil)
- :epilogue-code '(progn (handler-case (main)
- (condition () (quit))))
- :lisp-files '("clic.o")))
+;; load clic which is in $PWD
+(push '*default-pathname-defaults* asdf:*central-registry*)
-(format t "~%~%Compilation finished~%")
+(in-package :cl-user)
+
+(asdf:make-build "clic" :type :program
+ :monolithic t
+ :move-here "."
+ :prologue-code '(ext:set-signal-handler ext:+sigint+ nil)
+ :epilogue-code '(progn (handler-case (main)
+ (condition () (quit)))))
(quit)
DIR diff --git a/make-bundle.lisp b/make-bundle.lisp
@@ -1,2 +1,2 @@
-(ql:bundle-systems '("usocket" "cl+ssl") :to "3rdparties/")
+(ql:bundle-systems '("usocket" "cl+ssl" "asdf") :to "3rdparties/")
(quit)