]> Projects (at) Tadryanom (dot) Me - AdrOS.git/commit
feat: DOOM compiles and links — adapter, build system, ulibc compat headers
authorTulio A M Mendes <[email protected]>
Thu, 12 Feb 2026 08:08:50 +0000 (05:08 -0300)
committerTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 02:44:55 +0000 (23:44 -0300)
commit257e5ff6e650af4f9eb067731357d6e8ef56586f
treefcaca761f4bf32545bae7aeb9f6c019893c79e35
parent61bc14738555ebe829da6df49168f0ab555283a4
feat: DOOM compiles and links — adapter, build system, ulibc compat headers

doom.elf (450KB) now builds successfully from doomgeneric source
with the AdrOS platform adapter.

Build system:
- user/doom/Makefile: excludes platform-specific adapters (SDL,
  allegro, emscripten, xlib, win, soso, linuxvt) and links with
  ulibc + crt0
- doomgeneric_adros.c: added main() entry point calling
  doomgeneric_Create/doomgeneric_Tick

New ulibc compatibility headers for DOOM:
- strings.h (wrapper for string.h)
- inttypes.h (PRId32/PRIu32/PRIx32 format macros)
- math.h (fabs/fabsf inline stubs)
- fcntl.h (O_RDONLY, O_WRONLY, O_CREAT, etc.)
- assert.h (assert macro with printf+exit)
- sys/types.h (ssize_t, off_t, pid_t, etc.)
- sys/stat.h (struct stat, S_ISDIR/S_ISREG)

New ulibc functions:
- stdlib: atof, system (stub), strtol
- All 19/19 kernel tests pass
user/doom/Makefile
user/doom/doomgeneric_adros.c
user/ulibc/include/assert.h [new file with mode: 0644]
user/ulibc/include/fcntl.h [new file with mode: 0644]
user/ulibc/include/inttypes.h [new file with mode: 0644]
user/ulibc/include/math.h [new file with mode: 0644]
user/ulibc/include/stdlib.h
user/ulibc/include/strings.h [new file with mode: 0644]
user/ulibc/include/sys/stat.h [new file with mode: 0644]
user/ulibc/include/sys/types.h [new file with mode: 0644]
user/ulibc/src/stdlib.c