ASDF will make standalone images rather than the weird shell-script-
assisted things that `cl-launch' produces.
This is a little tricky because ASDF output translations can't match
just a filename with no type. As a bodge, produce the image with a
`.img' extension and rename in the makefile.
SOURCES = \
zone.asd \
frontend.lisp \
SOURCES = \
zone.asd \
frontend.lisp \
net.lisp serv.lisp sys.lisp \
addr-family-ipv4.lisp addr-family-ipv6.lisp
net.lisp serv.lisp sys.lisp \
addr-family-ipv4.lisp addr-family-ipv6.lisp
all:: zone
zone: $(SOURCES)
all:: zone
zone: $(SOURCES)
- cl-launch -o $@ -s zone +I -d `pwd`/zone.core -r zone.frontend:main
-
-clean:; rm -f $(CLEANFILES)
+ ASDF_OUTPUT_TRANSLATIONS="(:output-translations ((#p\"$(abspath zone.img)\") t) :inherit-configuration)" \
+ runlisp -e "(progn (asdf:clear-configuration) (asdf:operate 'asdf:program-op \"zone\"))"
+ mv zone.img $@
+clean:: rm -f zone
+install:: zone
+ install zone $(bindir)/
:version "1.0.0"
:author "Mark Wooding <mdw@distorted.org.uk>"
:depends-on ("mdw" #+ecl "cffi" #+sbcl "sb-bsd-sockets")
:version "1.0.0"
:author "Mark Wooding <mdw@distorted.org.uk>"
:depends-on ("mdw" #+ecl "cffi" #+sbcl "sb-bsd-sockets")
+ :entry-point "zone.frontend:main"
+ :build-pathname "zone.img"
:components ((:file "net-package")
(:file "sys")
(:file "net")
:components ((:file "net-package")
(:file "sys")
(:file "net")