package build EXT :: ".exe" when ODIN_OS == .Windows else "" TARGET :: "lateralis" + EXT import "core:fmt" compile_shaders :: proc() -> Error { return exec("sokol-shdc -i shader.glsl -o shader.odin -l hlsl5:glsl430 -f sokol_odin") } build_engine :: proc() -> Error { return exec("odin build . -out:" + TARGET) } run_engine :: proc() -> Error { return exec(TARGET) } clean :: proc() -> Error { return remove_multiple("shader.odin", TARGET) } main :: proc() { err := handle_commands( { "compile-shaders" = {compile_shaders}, "build" = {build_engine}, "run" = {compile_shaders, build_engine, run_engine}, "clean" = {clean}, }, ) if err != nil { fmt.println("Build Failed:", err) return } }