trivial-features
trivial-features ensures consistent *FEATURES* across multiple Common Lisp implementations.

For example, on MacOS X platforms, while most Lisps push :DARWIN to *FEATURES*, CLISP and Allegro push :MACOS and :MACOSX instead, respectively. Some Lisps might not push any feature suggesting MacOS X at all. trivial-features will make sure all Lisps will have :DARWIN in the *FEATURES* list when running on MacOS X. This way, you can write

#+darwin foo #-darwin bar

instead of

#+(or darwin macos macosx) foo #-(or darwin macos macosx) bar

The included SPEC document describes the set of symbols that should or should not be present in CL:*FEATURES* on certain circumstances. This specification is implemented by the TRIVIAL-FEATURES system which supports a handful of Lisps.

The test suite is, in effect, an implementation using CFFI that is checked against the various implementations in src/tf-*.lisp.

License: MIT

Source repository: https://github.com/trivial-features/trivial-features
Release tarballs: https://common-lisp.net/~loliveira/tarballs/trivial-features/
NetBSD package: https://pkgsrc.se/wip/cl-trivial-features


trivial system programming