Commit ba3b0861 authored by Ian Rogers's avatar Ian Rogers Committed by Namhyung Kim
Browse files

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: default avatarJames Clark <james.clark@linaro.org>
Signed-off-by: default avatarIan Rogers <irogers@google.com>
Link: https://lore.kernel.org/r/20250311213628.569562-7-irogers@google.com


Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
parent 21944462
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -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')