aboutsummaryrefslogtreecommitdiff
BranchCommit messageAuthorAge
mainMakefile: Remove extraneous target dependencyEuAndreh2 years
 
 
AgeCommit messageAuthorFilesLines
2024-01-05Makefile: Remove extraneous target dependencyHEADmainEuAndreh1-3/+0
2024-01-05Setup stub unit test infrastructureEuAndreh1313-2/+13518
2024-01-05Fix the build system.•••The improvements are: - use most of the default "Makefile" for standard packaging; - also use the default ".gitignore" with for the derived assets; - don't impose so many $CFLAGS on the user. GCC still needs to be given the `-ffreestanding` flag explicitly for us to get a good binary; - stop using ad-hoc tools/* scripts, and avoid the code-generation anti-pattern overall on the build. Some of the generated files were checked-in, and some were removed; - remove empty files; - use POSIX make(1) over gmake; - add fuzz targets; - partial "install" and "uninstall" targets; - complete "clean" target. The shortcomings are: - only working on x86_64. More platforms coming soon; - code is still messy: way too many warnings, GNU/BSD specific extensions, inline assembly, and all kinds of unportable code; - still only works with GCC and GCC-like compilers, and completly fails with tcc(1) and cproc(1); - the `deps.mk` file is being maintained manually. As I work on the source files I'll finish automating its generation with `mkdeps.sh`; - still seems to be coupled with Linux; - still is missing tests setup; - still uses `#include <$NAME.h>` instead of the correct `#include "$NAME.h"` form. The generated libgrovel.a did match the previous lib/libc.a 100%. EuAndreh27-686/+3682
2024-01-02src/internal/version.h: Check-in file with fixed value for compilationEuAndreh1-0/+1
2024-01-02tools/: Remove unused filesEuAndreh5-199/+0
2024-01-02Inline "INSTALL" into "README"EuAndreh2-191/+103
2024-01-02Remove unused filesEuAndreh3-47/+0
2024-01-02Makefile: Inline everything into a single fileEuAndreh4-869/+51
2024-01-02git mv WHATSNEW CHANGELOG.mdEuAndreh1-0/+0
2023-11-16mntent: fields are delimited only by tabs or spaces, not general whitespace•••this matters because the kernel-provided mtab only escapes tabs, spaces, newlines, and backslashes. it leaves carriage returns, form feeds, and vertical tabs literal. Rich Felker1-1/+1
[...]