Redot-Engine / redot-proposals

Redot Improvement Proposals
MIT License
31 stars 7 forks source link

Move from SConstruct to another build system #30

Open CristianoBarone opened 12 hours ago

CristianoBarone commented 12 hours ago

Describe the project you are working on

Build system

Describe the problem or limitation you are having in your project

The current build system, SCons, is not the best. For one, it's tricky to install for someone that has never used it and it does not provide pre-built binaries on Windows, not to mention that SCons is often rightfully regarded as slow.

Describe the feature / enhancement and how it helps to overcome the problem or limitation

Remove the old SCons configurations and replace them with a faster and more straightforward build system (like xmake, CMake or something else)

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

The SConstruct, version.py, scu_builders.py, gles3_builders.py, glsl_builders.py, .scons_env.json must be removed

If this enhancement will not be used often, can it be worked around with a few lines of script?

This enhancement is, at least in my opinion, critical to simplify the build progress and we cannot do otherwise if we don't want to use SCons.

Is there a reason why this should be core and not an add-on in the asset library?

It cannot be an asset

chenasraf commented 10 hours ago

I'm not entirely familiar with SConstruct aside from building Redot a couple of times on my machine, so I have a few questions that might also help steer the discussion here

Spartan322 commented 7 hours ago

CMake/XMake are not capable to support this kinda project, alternative build systems are not a trivial thing to integrate either.