diff options
author | David Robillard <d@drobilla.net> | 2019-06-06 21:45:07 +0200 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2019-06-06 21:45:32 +0200 |
commit | 384566135906ea6cbdc03cef0e76f6ed11e208fd (patch) | |
tree | 4af7c0e5eeda62e64db8af79703ac6a543917e63 | |
parent | 2314e236ca6e7d94a26c3c17091da0f25f5867f3 (diff) | |
download | autowaf-384566135906ea6cbdc03cef0e76f6ed11e208fd.tar.gz autowaf-384566135906ea6cbdc03cef0e76f6ed11e208fd.tar.bz2 autowaf-384566135906ea6cbdc03cef0e76f6ed11e208fd.zip |
Print friendly error message when waflib submodule is missing
-rwxr-xr-x | waf | 15 |
1 files changed, 13 insertions, 2 deletions
@@ -2,15 +2,26 @@ # Minimal waf script for projects that include waflib directly -from waflib import Context, Scripting - +import sys import inspect import os +try: + from waflib import Context, Scripting +except Exception as e: + sys.stderr.write('error: Failed to import waf (%s)\n' % e) + if os.path.exists('.git'): + sys.stderr.write("Are submodules up to date? " + "Try 'git submodule update --init --recursive'\n") + + sys.exit(1) + + def main(): script_path = os.path.abspath(inspect.getfile(inspect.getmodule(main))) project_path = os.path.dirname(script_path) Scripting.waf_entry_point(os.getcwd(), Context.WAFVERSION, project_path) + if __name__ == '__main__': main() |