Mintsuki
37701de02b
build: Simplify BIOS stage1 decompressor build system
...
It is now a single assembly file so it can be simplified.
2026-04-19 00:35:14 +02:00
Mintsuki
18f08ed399
build: Remove .cache and compile_commands.json on distclean
2026-04-19 00:35:14 +02:00
Kamila Szewczyk
9c3ead9386
decompressor: gzip/tinf -> limlz
...
removes external dependency on tinf by replacing the compression algorithm with a simpler, faster, smaller and more auditable fixed-width LZ77 encoding purpose-tailored to x86 code mixed with data.
before: decompressor.bin 2,492 bytes (tinf dependency) with .text 0x875 and .rodata 0x13c bytes each.
after: decompressor.bin consists only of .text, 0xe6-byte decompressor; 90.8% reduction in decompressor volume.
the dependency on gzip during compile-time is replaced by host/limlzpack.c, a Lempel-Ziv encoder in 275 SLoC that uses a suffix array matchfinder (prefix-doubling in mathcal O(n log^2 n) and Storer-Szymanski backwards parse. the fixed-width formats packets as [F][LLLL][MMM], favouring a literal-skewed distribution with F switching between one-byte and two-byte offsets (favouring recent statistics).
integrity checking is done via crc32 with the polynomial 0xEDB88320, reflected.
the effective loss in compression ratio by using a tremendously simpler and less packed with edge cases algorithm causes a compression ratio hit well below 1KB, factoring in the stub sizes.
also adds new machinery for host cc detection per review.
2026-04-19 00:29:09 +02:00
Mintsuki
3f866e1ce8
misc: Migration to GitHub
2026-04-06 19:04:22 +02:00
Mintsuki
e60466eaf3
build: Remove edk2-ovmf directory instead of ovmf* on distclean
2025-12-24 14:13:01 +01:00
Mintsuki
38f70a623d
build: Drop zstd and lzip release tarballs
...
No one really used these anyways.
2025-11-29 10:16:29 +01:00
Mintsuki
3a98a4bfbd
protos/limine: Update limine-protocol dependency
...
Also: do not install limine.h and PROTOCOL.md anymore on "make install".
2025-11-01 14:09:33 +01:00
Mintsuki
a9b35f3050
ci: Update workflows for Codeberg migration
2025-08-30 13:38:58 +02:00
Mintsuki
dde0bce0ba
build: Update repository links and adjustments for PicoEFI rebrand
2025-08-20 08:00:14 +02:00
Mintsuki
d6ce05b5ff
build: Miscellaneous makefile maintenance and improvements
2025-08-13 07:05:30 +02:00
Mintsuki
cb304d05cf
build: Get rid of freestanding-toolchain
...
And some other miscellaneous improvements.
2025-08-07 18:22:05 +02:00
Mintsuki
3b5b1c1203
build: Minor makefile changes (2)
2025-08-04 16:45:40 +02:00
Mintsuki
03e3853541
build: Minor makefile changes
2025-08-03 07:24:31 +02:00
Mintsuki
1bb1b14f52
Revert "build: Many makefile improvements (hopefully, includes bodging)"
...
This reverts commit 10514f5557 .
2025-08-02 22:25:12 +02:00
Mintsuki
54f81363a6
Revert "build: Improvement for self -rR make kludge"
...
This reverts commit 92485906bc .
2025-08-02 22:23:54 +02:00
Mintsuki
8e38080724
Revert "build: Improvement for self -rR make kludge (2)"
...
This reverts commit 62664f8436 .
2025-08-02 22:23:39 +02:00
Mintsuki
f27a5c39cd
build: Improvement for self -rR make kludge (2)
2025-08-01 00:27:07 +02:00
Mintsuki
0f7c607034
build: Improvement for self -rR make kludge
2025-07-31 03:43:23 +02:00
Mintsuki
b8d4a54e64
build: Many makefile improvements (hopefully, includes bodging)
2025-07-31 03:30:51 +02:00
Mintsuki
05b1a75fde
misc: Update Flanterm to latest
2025-07-14 15:36:58 +02:00
Mintsuki
996a0c1801
misc: Move to using separate libfdt repository
2025-07-12 12:08:05 +02:00
Mintsuki
b532faea1f
misc: Move to using separate limine-protocol repository
2025-07-12 09:25:05 +02:00
Mintsuki
714bf2a362
build: Delete freestanding-toolchain's .git dir from tarballs
2025-05-07 20:21:32 +02:00
Mintsuki
15b57fb7c4
build: Delete cc-runtime repo directory from tarballs
2025-04-06 23:37:36 +02:00
Mintsuki
cb463226b9
misc: Update to latest, packed, cc-runtime
2025-04-06 22:38:15 +02:00
Mintsuki
1868470041
build: Install LICENSES files as documentation
2025-03-13 04:32:51 +01:00
Mintsuki
97db4ca4ca
build: Drop -0bsd suffix from in-tree copy of freestnd-c-hdrs-0bsd
2025-03-13 04:18:36 +01:00
Mintsuki
d247a8a170
docs: Rename PHILOSOPHY.md to FAQ.md
2025-03-11 23:02:11 +01:00
Mintsuki
3cadfdab74
docs: Split off 3rd party software acks. to dedicated file
2025-03-11 22:17:02 +01:00
mintsuki
3ae5dd7923
build: Misc build system improvements
2024-12-09 00:46:37 +01:00
mintsuki
375360f4b9
build: Misc improvements wrt variable passing
2024-11-28 00:42:36 +01:00
mintsuki
e287c9d1d0
build: Remove pkgconf stuff from build system as we do not need it
2024-11-27 23:25:12 +01:00
mintsuki
7aea0eeea1
build: PACKAGE_TARNAME makefile variable should not be overridable
2024-11-27 23:03:23 +01:00
mintsuki
c95f56ae72
build: Pass CC and CFLAGS properly to host.mk
2024-11-25 23:33:12 +01:00
mintsuki
244d3a129d
build: Remove .gitignore of cc-runtime on make dist
2024-11-22 22:32:44 +01:00
mintsuki
2d6c477633
Revert "build: Do not remove .gitignore files in tarballs"
...
This reverts commit c066360c5a .
2024-11-22 22:28:14 +01:00
mintsuki
c844c61363
build: Get rid of ?= usage and USER_VARIABLE
2024-11-22 20:29:16 +01:00
mintsuki
c066360c5a
build: Do not remove .gitignore files in tarballs
2024-11-08 08:35:56 +01:00
mintsuki
855c52a030
build: Use new, non-packed, cc-runtime revisions
2024-11-05 23:47:33 +01:00
mintsuki
66b5672044
build: Increase limine-uefi-cd.bin sector count to 5760
2024-10-23 00:12:18 +02:00
mintsuki
b6be98a0f6
build: Rebrand limine-efi to nyu-efi
2024-09-13 08:07:53 +02:00
mintsuki
5517cb2824
build: freestanding-headers -> freestnd-c-hdrs-0bsd
2024-09-13 07:44:23 +02:00
mintsuki
a0a39575b1
Revert "build: freestanding-headers -> freestnd-c-hdrs"
...
This reverts commit 91b7ef85ab .
2024-09-09 11:59:10 +02:00
mintsuki
91b7ef85ab
build: freestanding-headers -> freestnd-c-hdrs
2024-09-08 15:39:32 +02:00
mintsuki
a6732f817a
build: Pass -w-unknown-warning to nasm to suppress warnings if -w-reloc isn't supported
2024-09-03 04:21:19 +02:00
mintsuki
59078754f9
build: Override MKESCAPE/SHESCAPE/OBJESCAPE
2024-09-03 04:13:58 +02:00
mintsuki
8f5717784a
build: Compatibility fixes for GNU make 4.0/4.1
2024-09-03 04:01:51 +02:00
mintsuki
c2f9ad4ebd
build: Remove make version check as it turns out we do build on older make now
2024-09-02 05:14:17 +02:00
mintsuki
944e9bb41d
build: Replace DEFAULT_VAR with simpler USER_VARIABLE macro
2024-08-31 05:47:37 +02:00
mintsuki
75a2e5d52e
build: Work around issue with disabling built-in rules and variables on older GNU make
2024-08-25 19:01:33 +02:00