Linux (musl ABI) build of the OpenBSD m4 program
C 89%
Roff 7%
3%
Zig <1%

README.md

m4 #

m4 is a Linux (musl ABI) port of the OpenBSD m4 program.

Compiling #

To build it, you only require a Zig compiler toolchain, no yacc or lex are needed:

zig build -Dtarget=x86_64-linux-musl -Doptimize=ReleaseSmall

Port specifics #

  • Use of Zig toolchain to build a statically-linked application
  • Integration of pre-generated parser.c/h and tokenizer.c files
  • Integration of ohash.c/h and strtonum.c files from OpenBSD
  • Compilation fixes and adjustments

Special thanks to https://github.com/ibara/m4 for paving the way!

Licensing #

Upstream files come as a combination of ISC, BSD-2-Clause, and BSD-3-Clause licenses, on per-file basis. Check their respective header comments for details on applicability and copyright info.

Zig build files are covered with a simple and permissive BlueOak-1.0.0 license.