| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Start of a new script called treeshake to emit stats for minimal line counts
and binary sizes for all apps.
It doesn't actually do any dead-code deletion yet. But it does build and
run all apps successfully. (Except apps/mu; we'll ignore that for now.
It's probably not being disciplined about identifying internal labels.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This undoes 5672 in favor of a new plan:
Layers 000 - 099 are for running without syntax sugar. We use them for
building syntax-sugar passes.
Layers 100 and up are for running with all syntax sugar.
The layers are arranged in approximate order so more phases rely on earlier
layers than later ones.
I plan to not use intermediate syntax sugar (just sigils without calls,
or sigils and calls without braces) anywhere except in the specific passes
implementing them.
|
| |
|
|
|
|
|
|
|
|
|
| |
https://github.com/ozkl/soso
+ Much smaller than Linux; builds instantly
+ Supports graphics
- No network support
- Doesn't work on a cloud server (yet?)
|
| |
|
| |
|
|
|
|
| |
There's going to be multiple forms of syntax sugar going forward.
|
|\ |
|
| |
| |
| |
| |
| | |
We basically only want to rebuild phases of the self-hosted translator
when we run the self-hosted translator.
|
| |
| |
| |
| | |
Environment variables allow me to have non-local effects inside scripts.
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Be more robust to stray files with numeric prefixes.
|
| |
|
| |
|
|
|
|
|
| |
Turns out enabling profiling requires '-pg' to also be passed in to the
linker. Might as well pass all flags everywhere.
|
|
|
|
| |
Handle CFLAGS like "-g -O3 -pg" while compiling.
|
|
|
|
| |
Let's start highlighting pipe stages better in shell scripts.
|
|
|
|
|
| |
Was there some reason I used a subshell?
No reason recorded at bottom.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Streamline the build process.
It's safest to always:
a) check if each output is `older_than` the inputs necessary to
construct it, and
b) update the output only if something changed.
However:
i) We don't yet have helpers to do b) in all situations, and
ii) combining a) and b) can cause `older_than` to spuriously report
files being updated.
So we'll always run exactly one of a) and b) and err on the side of
keeping the output reliable, at the risk of occasionally updating a file
unnecessarily and triggering unnecessary work downstream. Cross that
bridge when we run into it.
|
|
|
|
| |
Don't update autogenerated *_list files unless necessary.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
I'd messed up termbox in commit 3443; it was weird how it failed though.
The terminal got really sluggish to switch between windows when the
edit/ app was running. And it stopped clearing the screen properly.
|
| |
|
| |
|
|
|
|
| |
Don't print anything during build if there's nothing being built.
|
| |
|
|
|
|
|
|
|
|
| |
Fix the sense of a shell function.
Somehow in all these years I hadn't realized that 0 is true and non-zero
is false for purposes of *nix shells' `&&` and `||` operators. Suddenly
Urbit doesn't seem so far out..
|
|
|
|
| |
Purge remaining `makefile`s, without breaking CI.
|
|
A generic build system is overkill for such a small project, and it was
adding complexity on OpenBSD which doesn't come with GNU make by
default.
In the process we also eliminate our reliance on bash and perl, at least
for the core build script.
|