mirror of
https://github.com/bitcoin/bitcoin.git
synced 2024-11-20 02:25:40 +01:00
9fdc8afe11
This is important to make sure that we're not testing tools different from the one we're building with. Introduce determine_wellknown_cmd, which encapsulates how we should handle well-known tools specification (IFS splitting, env override, etc.).
23 lines
649 B
Python
Executable File
23 lines
649 B
Python
Executable File
#!/usr/bin/env python3
|
|
# Copyright (c) 2021 The Bitcoin Core developers
|
|
# Distributed under the MIT software license, see the accompanying
|
|
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
'''
|
|
Common utility functions
|
|
'''
|
|
import shutil
|
|
import sys
|
|
import os
|
|
from typing import List
|
|
|
|
|
|
def determine_wellknown_cmd(envvar, progname) -> List[str]:
|
|
maybe_env = os.getenv(envvar)
|
|
maybe_which = shutil.which(progname)
|
|
if maybe_env:
|
|
return maybe_env.split(' ') # Well-known vars are often meant to be word-split
|
|
elif maybe_which:
|
|
return [ maybe_which ]
|
|
else:
|
|
sys.exit(f"{progname} not found")
|