My C compiler, Lance got decent preprocessor and linker updates recently
Lance's custom ELF linker now supports linking .a archive files and automatically chooses whether to use .so (dynamically-linked) or .a (static) versions of a library whenever -l is present in the command.
The example shown has libraylib.a statically linked in (including GLFW), with X11 dynamically linked in.
The preprocessor now allows #if, allowing expressions like defined(SOME_MACRO) && val > 10 to be evaluated in the preprocessing stage.
The new preprocessor allows much better compatibility with ordinary C code (for example, rlgl.h as shown in the video) without having to modify them greatly.