perf python: Fix setup.py mypy errors
getenv may return None, so assert it isn't None for CC and srctree environmental variables required for the script. Disable an optional warning related to Popen. Reviewed-by: James Clark <james.clark@linaro.org> Signed-off-by: Ian Rogers <irogers@google.com> Link: https://lore.kernel.org/r/20250311213628.569562-7-irogers@google.com Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
@@ -3,6 +3,7 @@ from subprocess import Popen, PIPE
|
||||
from re import sub
|
||||
|
||||
cc = getenv("CC")
|
||||
assert cc, "Environment variable CC not set"
|
||||
|
||||
# Check if CC has options, as is the case in yocto, where it uses CC="cc --sysroot..."
|
||||
cc_tokens = cc.split()
|
||||
@@ -12,8 +13,13 @@ if len(cc_tokens) > 1:
|
||||
else:
|
||||
cc_options = ""
|
||||
|
||||
# ignore optional stderr could be None as it is set to PIPE to avoid that.
|
||||
# mypy: disable-error-code="union-attr"
|
||||
cc_is_clang = b"clang version" in Popen([cc, "-v"], stderr=PIPE).stderr.readline()
|
||||
src_feature_tests = getenv('srctree') + '/tools/build/feature'
|
||||
|
||||
srctree = getenv('srctree')
|
||||
assert srctree, "Environment variable srctree, for the Linux sources, not set"
|
||||
src_feature_tests = f'{srctree}/tools/build/feature'
|
||||
|
||||
def clang_has_option(option):
|
||||
cc_output = Popen([cc, cc_options + option, path.join(src_feature_tests, "test-hello.c") ], stderr=PIPE).stderr.readlines()
|
||||
@@ -71,7 +77,7 @@ else:
|
||||
# The python headers have mixed code with declarations (decls after asserts, for instance)
|
||||
cflags += [ "-Wno-declaration-after-statement" ]
|
||||
|
||||
src_perf = getenv('srctree') + '/tools/perf'
|
||||
src_perf = f'{srctree}/tools/perf'
|
||||
build_lib = getenv('PYTHON_EXTBUILD_LIB')
|
||||
build_tmp = getenv('PYTHON_EXTBUILD_TMP')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user