cosmopolitan/libc/x
Justine Tunney ae5d06dc53 Unbloat build config
- 10.5% reduction of o//depend dependency graph
- 8.8% reduction in latency of make command
- Fix issue with temporary file cleanup

There's a new -w option in compile.com that turns off the recent
Landlock output path workaround for "good commands" which do not
unlink() the output file like GNU tooling does.

Our new GNU Make unveil sandboxing appears to have zero overhead
in the grand scheme of things. Full builds are pretty fast since
the only thing that's actually slowed us down is probably libcxx

    make -j16 MODE=rel
    RL: took 85,732,063µs wall time
    RL: ballooned to 323,612kb in size
    RL: needed 828,560,521µs cpu (11% kernel)
    RL: caused 39,080,670 page faults (99% memcpy)
    RL: 350,073 context switches (72% consensual)
    RL: performed 0 reads and 11,494,960 write i/o operations

pledge() and unveil() no longer consider ENOSYS to be an error.
These functions have also been added to Python's cosmo module.

This change also removes some WIN32 APIs and System Five magnums
which we're not using and it's doubtful anyone else would be too
2022-08-10 04:43:09 -07:00
..
bingblit.c Change license 2020-12-27 17:18:44 -08:00
filecmp.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
makedirs.c Unbloat build config 2022-08-10 04:43:09 -07:00
replaceuser.c Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
rmrf.c Add assimilate.com command for APE binaries 2022-07-13 20:56:24 -07:00
tunbing.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
unbingbuf.c Change license 2020-12-27 17:18:44 -08:00
unbingstr.c Change license 2020-12-27 17:18:44 -08:00
utf8toutf16.c Add MODE=optlinux build mode (#141) 2021-10-14 19:36:49 -07:00
utf8toutf32.c Make numerous improvements 2021-09-28 01:52:34 -07:00
utf16to32.c Make numerous improvements 2021-09-28 01:52:34 -07:00
utf16toutf8.c Make numerous improvements 2021-09-28 01:52:34 -07:00
x.h Work around Landlock output inode in compile.com 2022-08-09 07:55:44 -07:00
x.mk Productionize new APE loader and more 2021-10-02 08:27:03 -07:00
xasprintf.c Change license 2020-12-27 17:18:44 -08:00
xbarf.c Improve synchronization 2022-04-15 15:31:55 -07:00
xbasename.c Work around Landlock output inode in compile.com 2022-08-09 07:55:44 -07:00
xcalloc.c Unbloat build config 2022-08-10 04:43:09 -07:00
xdie.c Change license 2020-12-27 17:18:44 -08:00
xdirname.c Fix basename() and dirname() 2022-04-06 00:13:44 -07:00
xdtoa.c Improve signal handling and math 2021-02-25 18:33:33 -08:00
xdtoaf.c Improve signal handling and math 2021-02-25 18:33:33 -08:00
xdtoal.c Add long double printf formatting support 2022-06-14 02:18:03 -07:00
xfixpath.c Make build hermetic without shell scripts 2022-05-25 13:55:57 -07:00
xgetline.c Fix basename() and dirname() 2022-04-06 00:13:44 -07:00
xhomedir.c Improve linenoise and get it working on Windows 2021-08-15 14:34:05 -07:00
xjoinpaths.c Fix basename() and dirname() 2022-04-06 00:13:44 -07:00
xload.c Unbloat build config 2022-08-10 04:43:09 -07:00
xloadzd.c Unbloat build config 2022-08-10 04:43:09 -07:00
xmalloc.c Unbloat build config 2022-08-10 04:43:09 -07:00
xmemalign.c Unbloat build config 2022-08-10 04:43:09 -07:00
xmemalignzero.c Unbloat build config 2022-08-10 04:43:09 -07:00
xreadlink.c Improve system call support 2021-08-25 21:36:17 -07:00
xreadlinkat.c Improve system call support 2021-08-25 21:36:17 -07:00
xrealloc.c Unbloat build config 2022-08-10 04:43:09 -07:00
xsigaction.c Correct more typos (#500) 2022-07-21 20:53:30 -07:00
xslurp.c Fix bugs and make improvements 2022-04-20 10:05:34 -07:00
xspawn.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
xstrcat.c Improve Python tree-shaking 2021-09-06 19:24:10 -07:00
xstrdup.c Unbloat build config 2022-08-10 04:43:09 -07:00
xstripext.c Make numerous improvements 2021-09-28 01:52:34 -07:00
xstripexts.c Experiment with making Python go faster 2021-08-18 21:57:11 -07:00
xstrmul.c Change license 2020-12-27 17:18:44 -08:00
xstrndup.c Unbloat build config 2022-08-10 04:43:09 -07:00
xvalloc.c Unbloat build config 2022-08-10 04:43:09 -07:00
xvasprintf.c Unbloat build config 2022-08-10 04:43:09 -07:00
xvspawn.c Unbloat build config 2022-08-10 04:43:09 -07:00
xwrite.c Change license 2020-12-27 17:18:44 -08:00