Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
godotengine
GitHub Repository: godotengine/godot
Path: blob/master/misc/utility/scons_hints.py
9903 views
1
"""
2
Adds type hints to SCons scripts. Implemented via
3
`from misc.utility.scons_hints import *`.
4
5
This is NOT a 1-1 representation of what the defines will represent in an
6
SCons build, as proxies are almost always utilized instead. Rather, this is
7
a means of tracing back what those proxies are calling to in the first place.
8
"""
9
10
from typing import TYPE_CHECKING
11
12
if TYPE_CHECKING:
13
# ruff: noqa: F401
14
from SCons.Action import Action
15
from SCons.Builder import Builder
16
from SCons.Defaults import Chmod, Copy, CScan, DefaultEnvironment, Delete, DirScanner, Mkdir, Move, Touch
17
from SCons.Environment import Base
18
from SCons.Platform import Platform
19
from SCons.Platform.virtualenv import Virtualenv
20
from SCons.Scanner import FindPathDirs, ScannerBase
21
from SCons.Script import ARGLIST, ARGUMENTS, BUILD_TARGETS, COMMAND_LINE_TARGETS, DEFAULT_TARGETS
22
from SCons.Script.Main import (
23
AddOption,
24
BuildTask,
25
CleanTask,
26
DebugOptions,
27
GetBuildFailures,
28
GetOption,
29
PrintHelp,
30
Progress,
31
QuestionTask,
32
SetOption,
33
ValidateOptions,
34
)
35
from SCons.Script.SConscript import Configure, Return, SConsEnvironment, call_stack
36
from SCons.Script.SConscript import SConsEnvironment as Environment
37
from SCons.Subst import SetAllowableExceptions as AllowSubstExceptions
38
from SCons.Tool import CScanner, DScanner, ProgramScanner, SourceFileScanner, Tool
39
from SCons.Util import AddMethod, WhereIs
40
from SCons.Variables import BoolVariable, EnumVariable, ListVariable, PackageVariable, PathVariable, Variables
41
42
# Global functions
43
GetSConsVersion = SConsEnvironment.GetSConsVersion
44
EnsurePythonVersion = SConsEnvironment.EnsurePythonVersion
45
EnsureSConsVersion = SConsEnvironment.EnsureSConsVersion
46
Exit = SConsEnvironment.Exit
47
GetLaunchDir = SConsEnvironment.GetLaunchDir
48
SConscriptChdir = SConsEnvironment.SConscriptChdir
49
50
# SConsEnvironment functions
51
Default = SConsEnvironment(DefaultEnvironment()).Default
52
Export = SConsEnvironment(DefaultEnvironment()).Export
53
Help = SConsEnvironment(DefaultEnvironment()).Help
54
Import = SConsEnvironment(DefaultEnvironment()).Import
55
SConscript = SConsEnvironment(DefaultEnvironment()).SConscript
56
57
# Environment functions
58
AddPostAction = DefaultEnvironment().AddPostAction
59
AddPreAction = DefaultEnvironment().AddPreAction
60
Alias = DefaultEnvironment().Alias
61
AlwaysBuild = DefaultEnvironment().AlwaysBuild
62
CacheDir = DefaultEnvironment().CacheDir
63
Clean = DefaultEnvironment().Clean
64
Command = DefaultEnvironment().Command
65
Decider = DefaultEnvironment().Decider
66
Depends = DefaultEnvironment().Depends
67
Dir = DefaultEnvironment().Dir
68
Entry = DefaultEnvironment().Entry
69
Execute = DefaultEnvironment().Execute
70
File = DefaultEnvironment().File
71
FindFile = DefaultEnvironment().FindFile
72
FindInstalledFiles = DefaultEnvironment().FindInstalledFiles
73
FindSourceFiles = DefaultEnvironment().FindSourceFiles
74
Flatten = DefaultEnvironment().Flatten
75
GetBuildPath = DefaultEnvironment().GetBuildPath
76
Glob = DefaultEnvironment().Glob
77
Ignore = DefaultEnvironment().Ignore
78
Install = DefaultEnvironment().Install
79
InstallAs = DefaultEnvironment().InstallAs
80
InstallVersionedLib = DefaultEnvironment().InstallVersionedLib
81
Literal = DefaultEnvironment().Literal
82
Local = DefaultEnvironment().Local
83
NoCache = DefaultEnvironment().NoCache
84
NoClean = DefaultEnvironment().NoClean
85
ParseDepends = DefaultEnvironment().ParseDepends
86
Precious = DefaultEnvironment().Precious
87
PyPackageDir = DefaultEnvironment().PyPackageDir
88
Repository = DefaultEnvironment().Repository
89
Requires = DefaultEnvironment().Requires
90
SConsignFile = DefaultEnvironment().SConsignFile
91
SideEffect = DefaultEnvironment().SideEffect
92
Split = DefaultEnvironment().Split
93
Tag = DefaultEnvironment().Tag
94
Value = DefaultEnvironment().Value
95
VariantDir = DefaultEnvironment().VariantDir
96
97
env: SConsEnvironment
98
env_modules: SConsEnvironment
99
100