#!/usr/bin/env python3
import subprocess
import os.path as p
import sys
# also update `cfg.check_python_version` in `./wscript`
MIN_VER = (3, 8, 0)
# check before we start loading code and e.g. encounter SyntaxErrors. this means
# this file should remain compatible with any Python 3 (at least syntax-wise).
if sys.version_info[:3] < MIN_VER:
min_txt = ".".join(str(v) for v in MIN_VER)
current_txt = ".".join(str(v) for v in sys.version_info[:3])
print("ERROR: Python minimum supported version is",
min_txt, "but you have", current_txt, file=sys.stderr)
sys.exit(1)
d = p.dirname(p.realpath(__file__))
waf_light = p.join(d, 'modules', 'waf', 'waf-light')
python = sys.executable
try:
subprocess.check_call([python, waf_light] + sys.argv[1:])
except subprocess.CalledProcessError as e:
if e.returncode != 2 or p.isfile(waf_light):
sys.exit(1)
print('Missing waf submodule. Trying to get it')
try:
subprocess.check_call(['git', 'submodule', 'update', '--init',
'modules/waf'])
except subprocess.CalledProcessError:
print('Could not update submodule', file=sys.stderr)
sys.exit(1)
print('Submodules OK, try running again')