1*c8dee2aaSAndroid Build Coastguard Worker# Copyright 2019 Google LLC. 2*c8dee2aaSAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*c8dee2aaSAndroid Build Coastguard Worker# found in the LICENSE file. 4*c8dee2aaSAndroid Build Coastguard Worker 5*c8dee2aaSAndroid Build Coastguard Workerdef GetGNArgs(api_level, debug, arch=None, ndk=None, is_android_bp=False): 6*c8dee2aaSAndroid Build Coastguard Worker gn_args = { 7*c8dee2aaSAndroid Build Coastguard Worker 'ndk_api': api_level, 8*c8dee2aaSAndroid Build Coastguard Worker 'is_debug': 'true' if debug else 'false', 9*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_fontmgr_android': 'false', 10*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_fontmgr_empty': 'true', 11*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_graphite': 'true', 12*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_pdf': 'false', 13*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_skottie': 'false', 14*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_skshaper': 'false', 15*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_svg': 'false', 16*c8dee2aaSAndroid Build Coastguard Worker 'skia_enable_tools': 'true', 17*c8dee2aaSAndroid Build Coastguard Worker 'skia_tools_require_resources': 'true', 18*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_dng_sdk': 'false', 19*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_expat': 'true', 20*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_freetype': 'false', 21*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_icu': 'false', 22*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_libheif': 'false', 23*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_lua': 'false', 24*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_piex': 'false', 25*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_vulkan': 'true', 26*c8dee2aaSAndroid Build Coastguard Worker 'skia_use_wuffs': 'true', 27*c8dee2aaSAndroid Build Coastguard Worker } 28*c8dee2aaSAndroid Build Coastguard Worker 29*c8dee2aaSAndroid Build Coastguard Worker def gn_quote(s): 30*c8dee2aaSAndroid Build Coastguard Worker return '"%s"' % s 31*c8dee2aaSAndroid Build Coastguard Worker 32*c8dee2aaSAndroid Build Coastguard Worker if is_android_bp is True: 33*c8dee2aaSAndroid Build Coastguard Worker gn_args.update({ 34*c8dee2aaSAndroid Build Coastguard Worker 'target_os': gn_quote("android"), 35*c8dee2aaSAndroid Build Coastguard Worker 'target_cpu': gn_quote("none"), 36*c8dee2aaSAndroid Build Coastguard Worker 'is_official_build': 'true', 37*c8dee2aaSAndroid Build Coastguard Worker # gn_to_bp.py copies vk_mem_alloc.h to //vma_android/include 38*c8dee2aaSAndroid Build Coastguard Worker 'skia_vulkan_memory_allocator_dir': '"//vma_android"', 39*c8dee2aaSAndroid Build Coastguard Worker }) 40*c8dee2aaSAndroid Build Coastguard Worker else: 41*c8dee2aaSAndroid Build Coastguard Worker gn_args.update({ 42*c8dee2aaSAndroid Build Coastguard Worker 'target_cpu': gn_quote(arch), 43*c8dee2aaSAndroid Build Coastguard Worker 'ndk': gn_quote(ndk), 44*c8dee2aaSAndroid Build Coastguard Worker }) 45*c8dee2aaSAndroid Build Coastguard Worker return gn_args 46