mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-20 18:50:30 +01:00
intel/tools: make test aware of the meson test wrapper
Suggested-by: Dylan Baker <dylan@pnwbakers.com> Signed-off-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5155>
This commit is contained in:
parent
ccaa5b034f
commit
356be07ce2
1 changed files with 32 additions and 7 deletions
|
|
@ -2,10 +2,20 @@
|
|||
|
||||
import argparse
|
||||
import difflib
|
||||
import errno
|
||||
import os
|
||||
import pathlib
|
||||
import subprocess
|
||||
import sys
|
||||
import tempfile
|
||||
|
||||
# The meson version handles windows paths better, but if it's not available
|
||||
# fall back to shlex
|
||||
try:
|
||||
from meson.mesonlib import split_args
|
||||
except ImportError:
|
||||
from shlex import split as split_args
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--i965_asm',
|
||||
help='path to i965_asm binary')
|
||||
|
|
@ -16,6 +26,12 @@ parser.add_argument('--gen_folder',
|
|||
help='name of the folder for the generation')
|
||||
args = parser.parse_args()
|
||||
|
||||
wrapper = os.environ.get('MESON_EXE_WRAPPER')
|
||||
if wrapper is not None:
|
||||
i965_asm = split_args(wrapper) + [args.i965_asm]
|
||||
else:
|
||||
i965_asm = [args.i965_asm]
|
||||
|
||||
success = True
|
||||
|
||||
for asm_file in args.gen_folder.glob('*.asm'):
|
||||
|
|
@ -23,13 +39,22 @@ for asm_file in args.gen_folder.glob('*.asm'):
|
|||
expected_path = args.gen_folder / expected_file
|
||||
out_path = tempfile.NamedTemporaryFile()
|
||||
|
||||
subprocess.run([args.i965_asm,
|
||||
'--type', 'hex',
|
||||
'--gen', args.gen_name,
|
||||
'--output', out_path.name,
|
||||
asm_file],
|
||||
stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.STDOUT)
|
||||
try:
|
||||
command = i965_asm + [
|
||||
'--type', 'hex',
|
||||
'--gen', args.gen_name,
|
||||
'--output', out_path.name,
|
||||
asm_file
|
||||
]
|
||||
subprocess.run(command,
|
||||
stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.STDOUT)
|
||||
except OSError as e:
|
||||
if e.errno == errno.ENOEXEC:
|
||||
print('Skipping due to inability to run host binaries.',
|
||||
file=sys.stderr)
|
||||
exit(77)
|
||||
raise
|
||||
|
||||
with expected_path.open() as f:
|
||||
lines_before = f.readlines()
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue