diff options
author | Teddy Wing | 2022-05-22 00:32:48 +0200 |
---|---|---|
committer | Teddy Wing | 2022-05-22 00:41:18 +0200 |
commit | 0c58692dddac6643c55dc35f0b8f03ea4991104f (patch) | |
tree | 28f85c80feea7ebb88b2e0fd3105e5c74b5b90ac | |
parent | ed21989821175af68bc9bfa558b677991e04802d (diff) | |
download | wajir-0c58692dddac6643c55dc35f0b8f03ea4991104f.tar.bz2 |
Makefile: Bundle dependencies for packaging
Since I can't load Quicklisp dependencies when building with Homebrew or
MacPorts, do `(ql:bundle-systems)` to create a bundle that includes all
dependencies and can be packaged into a tarball for building from
package managers.
-rw-r--r-- | .gitignore | 4 | ||||
-rw-r--r-- | Makefile | 14 | ||||
-rw-r--r-- | bundle.lisp | 14 |
3 files changed, 31 insertions, 1 deletions
@@ -1 +1,5 @@ *.fasl + +/bundle/ +/lib/wajir/ +system-index.txt @@ -44,7 +44,19 @@ $(MAN_PAGE): doc/wajir.1.txt a2x --no-xmllint --format manpage $< +bundle: bundle.lisp + mkdir -p lib/wajir + cp -a wajir.asd src lib/wajir/ + + $(LISP) --load bundle.lisp + +bundle/bundled-local-projects/0000/wajir/wajir: bundle + $(LISP) --load bundle/bundle.lisp \ + --eval '(asdf:make :wajir)' \ + --eval '(quit)' + + .PHONY: install install: - install -m 755 wajir $(PREFIX)/bin + install -m 755 bundle/bundled-local-projects/0000/wajir/wajir $(PREFIX)/bin install -m 755 $(MAN_PAGE) $(PREFIX)/share/man/man1 diff --git a/bundle.lisp b/bundle.lisp new file mode 100644 index 0000000..8961589 --- /dev/null +++ b/bundle.lisp @@ -0,0 +1,14 @@ +(setf ql:*local-project-directories* '("./lib")) + +(let ((dependencies (asdf:system-depends-on (asdf:find-system :wajir))) + (local-dependencies '("com.inuoe.jzon" + "sysexits"))) + (ql:bundle-systems + (set-difference + (sort dependencies #'string-lessp) + local-dependencies + :test #'equal) + :to "./bundle" + :include-local-projects t)) + +(quit) |