Commit Graph

6 Commits

Author SHA1 Message Date
nmlgc 0109bc6aa3 [Build] Compile bmp2arr with Turbo C++, using MS-DOS Player on 64-bit systems
Yup, no more 32-bit C++ compiler required!

Part of P0004, funded by GhostPhanom.
2024-07-09 08:38:39 +02:00
nmlgc b86a2b1119 [Build] Rules: Properly split TLINK response file `echo` commands
Completes P0283, funded by [Anonymous].
2024-07-09 08:38:28 +02:00
nmlgc 816f3a083a [Build] Rules: Split long `echo` lines at Windows 9x limits
I have no words.

Part of P0283, funded by [Anonymous].
2024-07-09 08:38:23 +02:00
nmlgc 056085b478 [Build] Rules: Batch TCC invocations with identical command lines
Compiling as many source files as possible within a single TCC process
is the single most important build time optimization we can do. Sadly,
it won't work with Tup's parallel nature, but it can really shine in a
dumb batch build. This is the reason why Windows 9x can compile this
entire codebase on a single core in half the time it takes MS-DOS
Player to do the same on 64-bit Windows, on the same hardware.

That weird double-spacing, however, is the most ridiculous workaround
for a bug I have seen in a long while…

Completes P0282, funded by [Anonymous].
2024-07-09 02:46:55 +02:00
nmlgc dd129f4f6f [Build] Rules: Add output directory creation to the dumb batch file
`tup generate` does this as well, but only emits the `mkdir` calls for
the directories that are missing in the current working tree, requiring
a clean checkout to actually emit all necessary ones. This is much more
convenient.

Part of P0282, funded by [Anonymous].
2024-07-09 02:46:55 +02:00
nmlgc 6842b64f5c [Build] Reimplement `tup generate` in Lua and Batch
Part of P0282, funded by [Anonymous].
2024-07-09 02:46:55 +02:00