Oryx development FAQ

Why do you use cryptlib?

We don't like OpenSSL. The code quality is depressing and the API confuses us. Cryptlib is a better alternative, whose only big disadvantage is that it's little used. When we run into problems with cryptlib, there aren't dozens of web pages from other people who've run into the same problems and found the solution.

Cryptlib is written by Peter Gutmann, who's long been a respected authority on cryptography.

Why do you use jam?

Because make isn't especially good. There are dozens of alternatives, jam is one of them. There may well be even better ones around that we haven't seen.

Some of the things we particularly like about jam are:

Automatic dependencies. In jam, "make depend" is built in, and therefore works better than the glued-on make features.

Speed! Jam works quickly. It avoids unnecessary work (partly helped by its automatic dependencies) and uses SMP machines optimally, even running multiple compiles in different directories. Jam can sort the compiles such that failing compiles tend to come early. While we're working, we usually get our error messages within a couple of seconds, no matter how big the compile is.

Clean design. When building, jam first decides what needs doing, then does it. Only in the second phase are programs executed. This constrains the build system to some degree (for example, it's impossible to include a generated makefile), but the result is a system that builds cleanly and seldom has obscure unreproducible errors.

It can be tricky to chase down errors in jamfiles, but not as tricky as chasing down errors in ten-thousand-line autoconf-generated makefiles.

For further questions, please ask info@oryx.com.