lateralis/build/build.odin

38 lines
806 B
Odin
Raw Normal View History

2025-02-03 18:15:56 +13:00
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
}
}