diff options
author | Dan Albert <danalbert@google.com> | 2015-08-28 16:49:04 -0700 |
---|---|---|
committer | Dan Albert <danalbert@google.com> | 2015-08-28 16:49:04 -0700 |
commit | c78ebe9a44cf69c46fd4e3185fef62e567b5ad4a (patch) | |
tree | 8ac58677d1bcce191344ca157c9fad399ba82d59 | |
parent | d91d70c01d44a6f0feb72380b2accc928e6d0f32 (diff) | |
download | yasm-c78ebe9a44cf69c46fd4e3185fef62e567b5ad4a.tar.gz |
Refactor to use build_support.
Change-Id: Ie8b02b50a537c12806442dff529f1c7d755a93f0
-rwxr-xr-x | build.py | 66 |
1 files changed, 8 insertions, 58 deletions
@@ -17,68 +17,18 @@ """Builds YASM for the NDK.""" from __future__ import print_function -import argparse -import inspect import os -import subprocess -import sys +import site +site.addsitedir(os.path.join(os.path.dirname(__file__), '../../ndk/build/lib')) -def android_path(path=''): - top = os.getenv('ANDROID_BUILD_TOP', '') - return os.path.realpath(os.path.join(top, path)) +import build_support -def get_default_package_dir(): - return android_path('out/ndk') - - -def get_default_host(): - if sys.platform in ('linux', 'linux2'): - return 'linux' - elif sys.platform == 'darwin': - return 'darwin' - else: - raise RuntimeError('Unsupported host: {}'.format(sys.platform)) - - -class ArgParser(argparse.ArgumentParser): - def __init__(self): - super(ArgParser, self).__init__( - description=inspect.getdoc(sys.modules[__name__]), - formatter_class=argparse.RawDescriptionHelpFormatter) - - self.add_argument( - '--host', choices=('darwin', 'linux', 'windows', 'windows64'), - default=get_default_host(), - help='Build binaries for given OS (e.g. linux).') - self.add_argument( - '--package-dir', help='Directory to place the packaged GCC.', - default=get_default_package_dir()) - - -def main(): - args = ArgParser().parse_args() - - if 'ANDROID_BUILD_TOP' not in os.environ: - top = os.path.join(os.path.dirname(__file__), '../..') - os.environ['ANDROID_BUILD_TOP'] = os.path.realpath(top) - - os.chdir(android_path('toolchain/yasm')) - - toolchain_path = android_path('toolchain') - ndk_path = android_path('ndk') - - package_dir_arg = '--package-dir={}'.format(args.package_dir) - - ndk_build_tools_path = android_path('ndk/build/tools') - build_env = dict(os.environ) - build_env['NDK_BUILDTOOLS_PATH'] = ndk_build_tools_path - build_env['ANDROID_NDK_ROOT'] = ndk_path - +def main(args): build_cmd = [ - 'bash', 'build-yasm.sh', toolchain_path, ndk_path, - package_dir_arg, '--verbose', + 'bash', 'build-yasm.sh', build_support.toolchain_path(), + build_support.ndk_path(), ] if args.host in ('windows', 'windows64'): @@ -87,7 +37,7 @@ def main(): if args.host != 'windows': build_cmd.append('--try-64') - subprocess.check_call(build_cmd, env=build_env) + build_support.build(build_cmd, args) if __name__ == '__main__': - main() + build_support.run(main) |