feat: project init, basic lexer implementation

This commit is contained in:
2025-08-27 18:39:00 +02:00
commit a5324195f9
6 changed files with 3356 additions and 0 deletions

34
nob.c Normal file
View File

@ -0,0 +1,34 @@
#define NOB_STRIP_PREFIX
#define NOB_IMPLEMENTATION
#define NOB_WARN_DEPRECATED
#define NOB_EXPERIMENTAL_DELETE_OLD
#include "nob.h"
#define BUILD_DIR "./build"
#define SRC "./src"
#define EXTERNAL_DIR "./external"
Cmd cmd = {0};
int main(int argc, char *argv[]) {
NOB_GO_REBUILD_URSELF(argc, argv);
if (!nob_mkdir_if_not_exists(BUILD_DIR))
return 1;
nob_cc(&cmd);
nob_cc_flags(&cmd);
nob_cc_output(&cmd, BUILD_DIR "/ada");
cmd_append(&cmd, "-I" EXTERNAL_DIR);
cmd_append(&cmd, "-DSTB_C_LEXER_IMPLEMENTATION");
nob_cc_inputs(&cmd, EXTERNAL_DIR "/stb_c_lexer.h", SRC "/main.c");
if (!cmd_run(&cmd))
return 1;
cmd_append(&cmd, BUILD_DIR "/ada");
if (!cmd_run(&cmd))
return 1;
return 0;
}