Refactor SCons build into more modular scripts#39
Open
Spartan322 wants to merge 1 commit into
Open
Conversation
e4fcdee to
a3ac442
Compare
b34d602 to
852d7fd
Compare
f3ebd65 to
1db1acd
Compare
Rework the SCons build system into a modular toolset Simplify SConstruct to delegate options/generation to a new build/scripts.py Correct error module imports of parent build modules: This was caused by importing build modules inside the tools directory Add build_dir script import for internal VariantDir separation Add gen_dir script import for delegating generated files (for Author, License, and Git builders) Add AddLibraryIncludes method for simplified include configuration and exposure Add AddLibrarySources method for simplified source configuration Add BuildBaseLibrary method for specifying static library file name and target install location Add BuildHeadlessProgram method for specifying headless program construction Add BuildUnitTest method for specifying unit test program construction Add BuildDependencyLibrary method for specifying dependency library construction Change command strings to be less verbose by default with build/no_verbose.py Add color utilities in build/color.py Extract string utilities to build/string.py Change GlobRecursive functions to use cwd over specifying directory in pattern Change GetGitInfo to method Add name_prefix attribute getter inside GetGitInfo method Move functionality of build/common_compiler_flags to tools/scripts_flags.py Update platform tools to use tools/script_flags.py Remove obsolete platform tools Add .gitignore entries for scons artifacts Improve cache progress reporting Add GCC/Clang PCH support via GCH/GCHSH builders Remove custom MSVC build/pch.py Add SCons configuration through project tools directory Add platform override support via the project tools directory Update ruff check to Python 3.10
1db1acd to
f72e7fb
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rework the SCons build system into a modular toolset
Simplify SConstruct to delegate options/generation to a new build/scripts.py
Add build_dir script import for internal VariantDir separation
Add gen_dir script import for delegating generated files (for Author, License, and Git builders)
Add AddLibraryIncludes method for simplified include configuration and exposure
Add AddLibrarySources method for simplified source configuration
Add BuildBaseLibrary method for specifying static library file name and target install location
Add BuildHeadlessProgram method for specifying headless program construction
Add BuildUnitTest method for specifying unit test program construction
Add BuildDependencyLibrary method for specifying dependency library construction
Change command strings to be less verbose by default with build/no_verbose.py
Add color utilities in build/color.py
Extract string utilities to build/string.py
Change GlobRecursive functions to use cwd over specifying directory in pattern
Change GetGitInfo to method
Add name_prefix attribute getter inside GetGitInfo method
Move functionality of build/common_compiler_flags to tools/scripts_flags.py
Update platform tools to use tools/script_flags.py
Remove obsolete platform tools
Add .gitignore entries for scons artifacts
Improve cache progress reporting
Add GCC/Clang PCH support via GCH/GCHSH builders
Remove custom MSVC build/pch.py
Add SCons configuration through project tools directory
Add platform override support via the project tools directory