Infrastructure for Common Lisp Ports: Overhaul
- Decouple ASDF initialization from devel/cl-asdf by creating a dedicated port: devel/freebsd-cl-asdf-init.
- Convert devel/cl-asdf/bsd.cl-asdf.mk to USES=cl.
- Add devel/cl-asdf-sbcl
- Update ASDF configuration:
- Prefer newer ASDF versions, but only if the fasl is available.
- Replace license text with an SPDX license identifier.
- Simplify and clarify documentation.
- Remove the assumption that ${PREFIX} is /usr/local.
- Use uiop:getenv instead of a custom getenv function.
- Remove asdf:output-files customization to resolve output translation issues.
- Improve output translations:
- Prevent writing fasls to ${PREFIX}/lib/common-lisp/ when the corresponding fasl port is not installed.
- Fall back to ASDF's default caching mechanism of writing fasl to a cache under ${HOME} when users install a Common Lisp port without its fasl port.
- Improve interoperability with Common Lisp code from sources outside of ports, such as Quicklisp.
- Add support for Clozure Common Lisp (CCL)
Approved by: olgeni (implicit)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D47983