summaryrefslogtreecommitdiff
path: root/SCons/Tool/msvs.py
diff options
context:
space:
mode:
Diffstat (limited to 'SCons/Tool/msvs.py')
-rw-r--r--SCons/Tool/msvs.py80
1 files changed, 40 insertions, 40 deletions
diff --git a/SCons/Tool/msvs.py b/SCons/Tool/msvs.py
index 86df1ef66..3e6a960de 100644
--- a/SCons/Tool/msvs.py
+++ b/SCons/Tool/msvs.py
@@ -207,7 +207,7 @@ class _UserGenerator:
usrdebg = None
usrconf = None
createfile = False
- def __init__(self, dspfile, source, env):
+ def __init__(self, dspfile, source, env) -> None:
# DebugSettings should be a list of debug dictionary sorted in the same order
# as the target list and variants
if 'variant' not in env:
@@ -249,12 +249,12 @@ class _UserGenerator:
trg[key] = str(src[key])
self.configs[var].debug = trg
- def UserHeader(self):
+ def UserHeader(self) -> None:
encoding = self.env.subst('$MSVSENCODING')
versionstr = self.versionstr
self.usrfile.write(self.usrhead % locals())
- def UserProject(self):
+ def UserProject(self) -> None:
pass
def Build(self):
@@ -317,14 +317,14 @@ V9DebugSettings = {
class _GenerateV7User(_UserGenerator):
"""Generates a Project file for MSVS .NET"""
- def __init__(self, dspfile, source, env):
+ def __init__(self, dspfile, source, env) -> None:
if self.version_num >= 9.0:
self.usrhead = V9UserHeader
self.usrconf = V9UserConfiguration
self.usrdebg = V9DebugSettings
super().__init__(dspfile, source, env)
- def UserProject(self):
+ def UserProject(self) -> None:
confkeys = sorted(self.configs.keys())
for kind in confkeys:
variant = self.configs[kind].variant
@@ -379,7 +379,7 @@ V10DebugSettings = {
class _GenerateV10User(_UserGenerator):
"""Generates a Project'user file for MSVS 2010 or later"""
- def __init__(self, dspfile, source, env):
+ def __init__(self, dspfile, source, env) -> None:
version_num, suite = msvs_parse_version(env['MSVS_VERSION'])
if version_num >= 14.3:
# Visual Studio 2022 is considered to be version 17.
@@ -399,7 +399,7 @@ class _GenerateV10User(_UserGenerator):
self.usrdebg = V10DebugSettings
super().__init__(dspfile, source, env)
- def UserProject(self):
+ def UserProject(self) -> None:
confkeys = sorted(self.configs.keys())
for kind in confkeys:
variant = self.configs[kind].variant
@@ -422,7 +422,7 @@ class _DSPGenerator:
'resources',
'misc']
- def __init__(self, dspfile, source, env):
+ def __init__(self, dspfile, source, env) -> None:
self.dspfile = str(dspfile)
try:
get_abspath = dspfile.get_abspath
@@ -585,7 +585,7 @@ class _DSPGenerator:
for n in sourcenames:
self.sources[n].sort(key=lambda a: a.lower())
- def AddConfig(self, variant, buildtarget, outdir, runfile, cmdargs, cppdefines, cpppaths, cppflags, dspfile=dspfile, env=env):
+ def AddConfig(self, variant, buildtarget, outdir, runfile, cmdargs, cppdefines, cpppaths, cppflags, dspfile=dspfile, env=env) -> None:
config = Config()
config.buildtarget = buildtarget
config.outdir = outdir
@@ -617,7 +617,7 @@ class _DSPGenerator:
if not (p.platform in seen or seen.add(p.platform))]
- def Build(self):
+ def Build(self) -> None:
pass
V6DSPHeader = """\
@@ -645,7 +645,7 @@ CFG=%(name)s - Win32 %(confkey)s
class _GenerateV6DSP(_DSPGenerator):
"""Generates a Project file for MSVS 6.0"""
- def PrintHeader(self):
+ def PrintHeader(self) -> None:
# pick a default config
confkeys = sorted(self.configs.keys())
@@ -659,7 +659,7 @@ class _GenerateV6DSP(_DSPGenerator):
self.file.write('!MESSAGE\n\n')
- def PrintProject(self):
+ def PrintProject(self) -> None:
name = self.name
self.file.write('# Begin Project\n'
'# PROP AllowPerConfigDependencies 0\n'
@@ -728,7 +728,7 @@ class _GenerateV6DSP(_DSPGenerator):
pdata = base64.b64encode(pdata).decode()
self.file.write(pdata + '\n')
- def PrintSourceFiles(self):
+ def PrintSourceFiles(self) -> None:
categories = {'Source Files': 'cpp|c|cxx|l|y|def|odl|idl|hpj|bat',
'Header Files': 'h|hpp|hxx|hm|inl',
'Local Headers': 'h|hpp|hxx|hm|inl',
@@ -777,7 +777,7 @@ class _GenerateV6DSP(_DSPGenerator):
# OK, we've found our little pickled cache of data.
try:
- datas = base64.decodestring(datas)
+ datas = base64.decodebytes(datas)
data = pickle.loads(datas)
except KeyboardInterrupt:
raise
@@ -798,7 +798,7 @@ class _GenerateV6DSP(_DSPGenerator):
# OK, we've found our little pickled cache of data.
# it has a "# " in front of it, so we strip that.
try:
- datas = base64.decodestring(datas)
+ datas = base64.decodebytes(datas)
data = pickle.loads(datas)
except KeyboardInterrupt:
raise
@@ -882,7 +882,7 @@ V8DSPConfiguration = """\
class _GenerateV7DSP(_DSPGenerator, _GenerateV7User):
"""Generates a Project file for MSVS .NET"""
- def __init__(self, dspfile, source, env):
+ def __init__(self, dspfile, source, env) -> None:
_DSPGenerator.__init__(self, dspfile, source, env)
self.version = env['MSVS_VERSION']
self.version_num, self.suite = msvs_parse_version(self.version)
@@ -905,7 +905,7 @@ class _GenerateV7DSP(_DSPGenerator, _GenerateV7User):
_GenerateV7User.__init__(self, dspfile, source, env)
- def PrintHeader(self):
+ def PrintHeader(self) -> None:
env = self.env
versionstr = self.versionstr
name = self.name
@@ -948,7 +948,7 @@ class _GenerateV7DSP(_DSPGenerator, _GenerateV7User):
self.file.write('\t<ToolFiles>\n'
'\t</ToolFiles>\n')
- def PrintProject(self):
+ def PrintProject(self) -> None:
self.file.write('\t<Configurations>\n')
confkeys = sorted(self.configs.keys())
@@ -1005,7 +1005,7 @@ class _GenerateV7DSP(_DSPGenerator, _GenerateV7User):
pdata = base64.b64encode(pdata).decode()
self.file.write(pdata + '-->\n')
- def printSources(self, hierarchy, commonprefix):
+ def printSources(self, hierarchy, commonprefix) -> None:
sorteditems = sorted(hierarchy.items(), key=lambda a: a[0].lower())
# First folders, then files
@@ -1027,7 +1027,7 @@ class _GenerateV7DSP(_DSPGenerator, _GenerateV7User):
'\t\t\t\tRelativePath="%s">\n'
'\t\t\t</File>\n' % file)
- def PrintSourceFiles(self):
+ def PrintSourceFiles(self) -> None:
categories = {'Source Files': 'cpp;c;cxx;l;y;def;odl;idl;hpj;bat',
'Header Files': 'h;hpp;hxx;hm;inl',
'Local Headers': 'h;hpp;hxx;hm;inl',
@@ -1095,7 +1095,7 @@ class _GenerateV7DSP(_DSPGenerator, _GenerateV7User):
# OK, we've found our little pickled cache of data.
try:
- datas = base64.decodestring(datas)
+ datas = base64.decodebytes(datas)
data = pickle.loads(datas)
except KeyboardInterrupt:
raise
@@ -1115,7 +1115,7 @@ class _GenerateV7DSP(_DSPGenerator, _GenerateV7User):
# OK, we've found our little pickled cache of data.
try:
- datas = base64.decodestring(datas)
+ datas = base64.decodebytes(datas)
data = pickle.loads(datas)
except KeyboardInterrupt:
raise
@@ -1192,7 +1192,7 @@ V15DSPHeader = """\
class _GenerateV10DSP(_DSPGenerator, _GenerateV10User):
"""Generates a Project file for MSVS 2010"""
- def __init__(self, dspfile, source, env):
+ def __init__(self, dspfile, source, env) -> None:
_DSPGenerator.__init__(self, dspfile, source, env)
self.dspheader = V10DSPHeader
self.dspconfiguration = V10DSPProjectConfiguration
@@ -1200,7 +1200,7 @@ class _GenerateV10DSP(_DSPGenerator, _GenerateV10User):
_GenerateV10User.__init__(self, dspfile, source, env)
- def PrintHeader(self):
+ def PrintHeader(self) -> None:
env = self.env
name = self.name
versionstr = self.versionstr
@@ -1340,7 +1340,7 @@ class _GenerateV10DSP(_DSPGenerator, _GenerateV10User):
pdata = base64.b64encode(pdata).decode()
self.file.write(pdata + '-->\n')
- def printFilters(self, hierarchy, name):
+ def printFilters(self, hierarchy, name) -> None:
sorteditems = sorted(hierarchy.items(), key = lambda a: a[0].lower())
for key, value in sorteditems:
@@ -1351,7 +1351,7 @@ class _GenerateV10DSP(_DSPGenerator, _GenerateV10User):
'\t\t</Filter>\n' % (filter_name, _generateGUID(self.dspabs, filter_name)))
self.printFilters(value, filter_name)
- def printSources(self, hierarchy, kind, commonprefix, filter_name):
+ def printSources(self, hierarchy, kind, commonprefix, filter_name) -> None:
keywords = {'Source Files': 'ClCompile',
'Header Files': 'ClInclude',
'Local Headers': 'ClInclude',
@@ -1377,7 +1377,7 @@ class _GenerateV10DSP(_DSPGenerator, _GenerateV10User):
'\t\t\t<Filter>%s</Filter>\n'
'\t\t</%s>\n' % (keywords[kind], file, filter_name, keywords[kind]))
- def PrintSourceFiles(self):
+ def PrintSourceFiles(self) -> None:
categories = {'Source Files': 'cpp;c;cxx;l;y;def;odl;idl;hpj;bat',
'Header Files': 'h;hpp;hxx;hm;inl',
'Local Headers': 'h;hpp;hxx;hm;inl',
@@ -1443,7 +1443,7 @@ class _GenerateV10DSP(_DSPGenerator, _GenerateV10User):
#'\t\t<None Include="SConstruct" />\n'
'\t</ItemGroup>\n' % str(self.sconscript))
- def Parse(self):
+ def Parse(self) -> None:
# DEBUG
# print("_GenerateV10DSP.Parse()")
pass
@@ -1462,7 +1462,7 @@ class _GenerateV10DSP(_DSPGenerator, _GenerateV10User):
class _DSWGenerator:
""" Base class for DSW generators """
- def __init__(self, dswfile, source, env):
+ def __init__(self, dswfile, source, env) -> None:
self.dswfile = os.path.normpath(str(dswfile))
self.dsw_folder_path = os.path.dirname(os.path.abspath(self.dswfile))
self.env = env
@@ -1483,12 +1483,12 @@ class _DSWGenerator:
self.name = os.path.basename(SCons.Util.splitext(self.dswfile)[0])
self.name = self.env.subst(self.name)
- def Build(self):
+ def Build(self) -> None:
pass
class _GenerateV7DSW(_DSWGenerator):
"""Generates a Solution file for MSVS .NET"""
- def __init__(self, dswfile, source, env):
+ def __init__(self, dswfile, source, env) -> None:
super().__init__(dswfile, source, env)
self.file = None
@@ -1520,7 +1520,7 @@ class _GenerateV7DSW(_DSWGenerator):
if self.nokeep == 0 and os.path.exists(self.dswfile):
self.Parse()
- def AddConfig(self, variant, dswfile=dswfile):
+ def AddConfig(self, variant, dswfile=dswfile) -> None:
config = Config()
match = re.match(r'(.*)\|(.*)', variant)
@@ -1548,7 +1548,7 @@ class _GenerateV7DSW(_DSWGenerator):
self.platforms = [p.platform for p in self.configs.values()
if not (p.platform in seen or seen.add(p.platform))]
- def GenerateProjectFilesInfo(self):
+ def GenerateProjectFilesInfo(self) -> None:
for dspfile in self.dspfiles:
dsp_folder_path, name = os.path.split(dspfile)
dsp_folder_path = os.path.abspath(dsp_folder_path)
@@ -1592,7 +1592,7 @@ class _GenerateV7DSW(_DSWGenerator):
# OK, we've found our little pickled cache of data.
try:
- datas = base64.decodestring(datas)
+ datas = base64.decodebytes(datas)
data = pickle.loads(datas)
except KeyboardInterrupt:
raise
@@ -1601,7 +1601,7 @@ class _GenerateV7DSW(_DSWGenerator):
self.configs.update(data)
- def PrintSolution(self):
+ def PrintSolution(self) -> None:
"""Writes a solution file"""
self.file.write('Microsoft Visual Studio Solution File, Format Version %s\n' % self.versionstr)
if self.version_num >= 14.3:
@@ -1769,7 +1769,7 @@ Package=<3>
class _GenerateV6DSW(_DSWGenerator):
"""Generates a Workspace file for MSVS 6.0"""
- def PrintWorkspace(self):
+ def PrintWorkspace(self) -> None:
""" writes a DSW file """
name = self.name
dspfile = os.path.relpath(self.dspfiles[0], self.dsw_folder_path)
@@ -1785,7 +1785,7 @@ class _GenerateV6DSW(_DSWGenerator):
self.file.close()
-def GenerateDSP(dspfile, source, env):
+def GenerateDSP(dspfile, source, env) -> None:
"""Generates a Project file based on the version of MSVS that is being used"""
version_num = 6.0
@@ -1801,7 +1801,7 @@ def GenerateDSP(dspfile, source, env):
g = _GenerateV6DSP(dspfile, source, env)
g.Build()
-def GenerateDSW(dswfile, source, env):
+def GenerateDSW(dswfile, source, env) -> None:
"""Generates a Solution/Workspace file based on the version of MSVS that is being used"""
version_num = 6.0
@@ -1861,7 +1861,7 @@ def GenerateProject(target, source, env):
GenerateDSW(dswfile, source, env)
-def GenerateSolution(target, source, env):
+def GenerateSolution(target, source, env) -> None:
GenerateDSW(target[0], source, env)
def projectEmitter(target, source, env):
@@ -2039,7 +2039,7 @@ solutionBuilder = SCons.Builder.Builder(action = '$MSVSSOLUTIONCOM',
default_MSVS_SConscript = None
-def generate(env):
+def generate(env) -> None:
"""Add Builders and construction variables for Microsoft Visual
Studio project files to an Environment."""
try: