| # -*- Python -*- |
| # |
| # Copyright (C) 2012 The Android Open Source Project |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| # |
| ### Configuration file for target side debugger integration tests |
| # |
| # Parameters available through lit --param options: |
| # android_sdk - Path to the android SDK directory |
| # sdk_version - SDK target to pass to 'android' for creating test projects |
| # minimum_sdk - SDK minimum version to embed in AndroidManifest.xml |
| |
| # If the user is running an individual tests directory, we have to load |
| # the libbcc site configuration first |
| build_top = getattr(config, 'build_top', None) |
| if build_top is None: |
| lit.load_config(config, os.path.join(os.getenv('ANDROID_BUILD_TOP', |
| '../../../../../'), 'frameworks', 'compile', 'libbcc', 'tests', |
| 'debuginfo', 'lit.site.cfg')) |
| build_top = config.build_top |
| |
| # Default SDK path and version |
| default_sdk_dir = os.path.join(config.base_build_path, 'sdk', 'android-sdk_' \ |
| + os.getenv('TARGET_BUILD_VARIANT') + '.' \ |
| + os.getenv('USER') + '_linux-x86') |
| default_sdk_version = "android-JellyBean" |
| default_minimum_sdk = "JellyBean" |
| |
| # Set up the suite name, extensions that are recognized as testcases, and |
| # the target triple string that must be used in cases marked expected failures |
| config.name = 'target_renderscript_debug' |
| config.suffixes = ['.rs'] |
| config.target_triple = 'target-bcc' |
| |
| # Output directory in the android source tree |
| if os.getenv('TARGET_BUILD_TYPE', None) == 'debug': |
| config.test_exec_root = os.path.join(config.build_top, 'out', 'debug', |
| 'target', 'tests', 'rsdebug') |
| else: |
| config.test_exec_root = os.path.join(config.build_top, 'out', 'target', |
| 'tests', 'rsdebug') |
| |
| # |
| ## Set up SDK path and version |
| # |
| config.sdk_dir = lit.params.get('android_sdk', default_sdk_dir) |
| if not os.path.isdir(config.sdk_dir): |
| lit.fatal("Android SDK directory " + config.sdk_dir + " does " \ |
| + "not exist. Check --param android_sdk=<path> lit parameter in test " \ |
| + "suite invocation.") |
| |
| config.sdk_version = lit.params.get('sdk_version', default_sdk_version) |
| config.minimum_sdk = lit.params.get('minimum_sdk', default_minimum_sdk) |
| |
| # |
| ## Set up environment variables |
| # |
| |
| # Propagate ANDROID_PRODUCT_OUT to child environment |
| config.environment['ANDROID_PRODUCT_OUT'] = os.getenv('ANDROID_PRODUCT_OUT') |
| config.environment['ANDROID_BUILD_TOP'] = os.getenv('ANDROID_BUILD_TOP') |
| |
| config.environment['DEBUGGER'] = config.gdb |
| config.environment['DEBUGGER_ARGS'] = "-d " + config.gdb_plugin_directory + ' ' |
| |
| if not lit.quiet: |
| lit.note('using Android SDK: %r' % config.sdk_dir) |
| lit.note('using Android SDK Version: %r' % config.sdk_version) |
| lit.note('using test apk builder: %r' % config.build_test_apk) |
| lit.note('using GDB plugin directory: %r' % config.gdb_plugin_directory) |
| |
| # Apply target-side test macro substitutions |
| config.substitutions.append( ('%build_test_apk_opts', ' --sdk ' + config.sdk_dir \ |
| + ' --target ' + config.sdk_version \ |
| + ' --minsdk ' + config.minimum_sdk)) |
| config.substitutions.append( ('%build_test_apk', ' ' + config.sh \ |
| + ' ' + config.build_test_apk + ' ')) |