diff options
author | quou <quou@disroot.org> | 2025-02-08 21:56:14 +1100 |
---|---|---|
committer | quou <quou@disroot.org> | 2025-02-08 21:58:09 +1100 |
commit | 41bc082ebfdde32750ad92bcadf9bf85f10e4bfe (patch) | |
tree | 2907df396448acd9d7b9f55883ddc04e61e4708e /build.ninja | |
parent | 34856a5f75f8df7405446c8e99440e1028c62619 (diff) |
ninja build for windows
Diffstat (limited to 'build.ninja')
-rw-r--r-- | build.ninja | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/build.ninja b/build.ninja new file mode 100644 index 0000000..06d3b37 --- /dev/null +++ b/build.ninja @@ -0,0 +1,106 @@ +# generated by configure.lua + +cflags = /nologo /Z7 /DDEBUG /MD /std:c++20 /Isc\glslang /Iqstd /Icfg /Dplat_win /Dplat_x86 /Dallocation_default_alignment=8 + +rule cpp + command = cl $cflags $in /c /Fo: "$out" + deps = msvc + +rule link + command = cl /nologo $in /Fe: "$out" /link /DEBUG $libs + +rule lib + command = lib /nologo $in /out:"$out" + +build app.obj: cpp app.cpp +build asset.obj: cpp asset.cpp +build c2.obj: cpp c2.cpp +build camera.obj: cpp camera.cpp +build debugdraw.obj: cpp debugdraw.cpp +build editor.obj: cpp editor.cpp +build maths.obj: cpp maths.cpp +build model.obj: cpp model.cpp +build physics.obj: cpp physics.cpp +build pipeline.obj: cpp pipeline.cpp +build scene.obj: cpp scene.cpp +build ui.obj: cpp ui.cpp +build video.obj: cpp video.cpp +build world.obj: cpp world.cpp +build c2.exe: link qstd/qstd.lib app.obj asset.obj c2.obj camera.obj debugdraw.obj editor.obj maths.obj model.obj physics.obj pipeline.obj scene.obj ui.obj video.obj world.obj + libs = user32.lib + +build qstd/memory.obj: cpp qstd/memory.c +build qstd/plat.obj: cpp qstd/plat.c +build qstd/str.obj: cpp qstd/str.c +build qstd/pack.obj: cpp qstd/pack.c +build qstd/qstd.lib: lib qstd/memory.obj qstd/plat.obj qstd/str.obj qstd/pack.obj + +build cfg/cfgparse.obj: cpp cfg/cfgparse.c +build cfg/cfg.lib: lib cfg/cfgparse.obj + +build sc/sc.obj: cpp sc/sc.cpp +build sc/includer.obj: cpp sc/includer.cpp +build shadercompiler.exe: link sc/sc.obj sc/includer.obj qstd/qstd.lib cfg/cfg.lib + libs = /LIBPATH:sc/glslang/build/glslang/Release /LIBPATH:sc/glslang/build/SPIRV/Release /LIBPATH:sc/glslang/build/glslang/OSDependent/Windows/Release /LIBPATH:sc/glslang/build/External/spirv-tools/source/Release /LIBPATH:sc/glslang/build/External/spirv-tools/source/link/Release /LIBPATH:sc/glslang/build/External/spirv-tools/source/opt/Release glslang.lib glslang-default-resource-limits.lib SPIRV.lib MachineIndependent.lib SPVRemapper.lib OSDependent.lib GenericCodeGen.lib SPIRV-Tools-link.lib SPIRV-Tools-opt.lib SPIRV-Tools.lib + +build ./packer.obj: cpp ./packer.c +build packer.exe: link ./packer.obj qstd/qstd.lib + + +build ./convtexture.obj: cpp ./convtexture.c +build convtexture.exe: link ./convtexture.obj qstd/qstd.lib + + +build ./convmodel.obj: cpp ./convmodel.c +build convmodel.exe: link ./convmodel.obj qstd/qstd.lib + + +build ./convmaterial.obj: cpp ./convmaterial.c +build convmaterial.exe: link ./convmaterial.obj qstd/qstd.lib cfg/cfg.lib + + +rule shadercompiler + command = shadercompiler.exe $in $out + +rule convmaterial + command = convmaterial.exe $in $out + +rule convmodel + command = convmodel.exe data $in $out + +rule convtexture + command = convtexture.exe $in $out $format + +rule packer + command = packer.exe $out -data $in + +build data/debug.csh: shadercompiler intermediate/debug.glsl | shadercompiler.exe +build data/mip_spec.csh: shadercompiler intermediate/mip_spec.glsl | shadercompiler.exe +build data/sky.csh: shadercompiler intermediate/sky.glsl | shadercompiler.exe +build data/surface.csh: shadercompiler intermediate/surface.glsl | shadercompiler.exe +build data/surface_depthonly.csh: shadercompiler intermediate/surface_depthonly.glsl | shadercompiler.exe +build data/tonemap.csh: shadercompiler intermediate/tonemap.glsl | shadercompiler.exe +build data/triangle.csh: shadercompiler intermediate/triangle.glsl | shadercompiler.exe +build data/ui.csh: shadercompiler intermediate/ui.glsl | shadercompiler.exe + +build data/monkey.mdl: convmodel intermediate/monkey.glb | convmodel.exe data/debug.csh data/mip_spec.csh data/sky.csh data/surface.csh data/surface_depthonly.csh data/tonemap.csh data/triangle.csh data/ui.csh +build data/cube.mdl: convmodel intermediate/cube.glb | convmodel.exe data/debug.csh data/mip_spec.csh data/sky.csh data/surface.csh data/surface_depthonly.csh data/tonemap.csh data/triangle.csh data/ui.csh + +build data/bricks.mat: convmaterial intermediate/bricks.mat | convmaterial.exe +build data/plastic.mat: convmaterial intermediate/plastic.mat | convmaterial.exe +build data/greybox.mat: convmaterial intermediate/greybox.mat | convmaterial.exe + +build data/22.tex: convtexture intermediate/22.bmp | convtexture.exe + format = bc1 +build data/kita.tex: convtexture intermediate/kita.bmp | convtexture.exe + format = bc1 +build data/brick_albedo.tex: convtexture intermediate/brick_albedo.bmp | convtexture.exe + format = bc1 +build data/brick_ao.tex: convtexture intermediate/brick_ao.bmp | convtexture.exe + format = bc4 +build data/brick_normal.tex: convtexture intermediate/brick_normal.bmp | convtexture.exe + format = bc5 +build data/sky.tex: convtexture intermediate/sky.hdr | convtexture.exe + format = rgba16f + +build pack: packer data/debug.csh data/mip_spec.csh data/sky.csh data/surface.csh data/surface_depthonly.csh data/tonemap.csh data/triangle.csh data/ui.csh data/monkey.mdl data/cube.mdl data/bricks.mat data/plastic.mat data/greybox.mat data/22.tex data/kita.tex data/brick_albedo.tex data/brick_ao.tex data/brick_normal.tex data/sky.tex | packer.exe |