* release-candidate: (156 commits)
refactors u3r_mug* and some call sites
corrects +muk jet comment
[CI] updates pinned arvo commit
removes aliases for +hor and +vor
[CI] updates pinned arvo commit
Revert "adds pristine jet copies (hash-order, containers, compiler)"
Revert "adds staged jet headers and dashboard declarations, renames everything"
Revert "adds temporary gum_w hash slot to u3_noun"
Revert "jets u3r_mur"
[CI] updates pinned arvo commit
[CI] ctrl-x out of :talk
renames *_vor to *_mor
replaces calls to u3qc_hor with u3qc_gor
updates arvo interface to use new axes
removes +hor jet, sets *_hor to point to *_gor
removes old u3r_mug*, switches u3r_mur* to u3r_mug*
sets u3qc__stage_hor to point to u3qc__stage_gor
sets u3r__stage_mug to point to u3r_mur
jets u3r_mur
memoize u3r_mur in temporary gum_w
...
This should work on Linux since kernel 3.17, OS X since 10.12, OpenBSD
since 5.6, and FreeBSD since 12.0. It also introduces no external
dependencies. Note that getentropy should only be called with at most
256 bytes or it will return EIO. The getrandom variant on Linux doesn't
check for this. If called with len > 256, it's allowed to produce a
short read if it gets interrupted. This should show up as an error, so
everything's fine.
MacPorts OpenSSL seems to include a proper pkgconfig file, so the
openssl dependency just works. N.B. I haven't tested this on a
homebrew system yet.
I also added a note to set LIBRARY_PATH=/opt/local to pick up gmp and
libsigsegv. An alternative would be to specify dirs: ['/opt/local/lib',
'/usr/local/lib'] on each of them.
- host_machine seems to be what we want for the machine that the binary
will run on. Doesn't matter unless anyone's cross compiling.
- There's a magic cross-platform threads dep apparently.
Their read loop is probably better anyway. This also sets CLOEXEC on the
opened file, since who knows.
We can do this in the getrandom case since on small reads (len <= 256),
getrandom doesn't fail with EINTR.
- Condense the allocator section in defs.h and make it match the
surrounding style.
- Use real calloc in c3_calloc. Some guy on the internet says
calloc can be faster than malloc since the OS may not actually
need to call memset.
- Replace calloc calls in vere code with c3_calloc.
Note that I left the c3_calloc definition as-is (i.e., not taking
a count argument). I was going to change it, but it seems like
count is 1 at all call sites. If it's ever used with count != 1,
I'd be in support of changing it, fwiw.