'skia_use_dng_sdk': 'false', 'skia_use_icu': 'false', 'skia_use_lua': 'false', 'skia_use_piex': 'false', 'skia_use_skcms': 'false', # specify that the Android.bp will supply the necessary components 'skia_use_system_expat': 'true', # removed this when gn is fixed 'skia_use_system_libpng': 'true', 'skia_use_system_jsoncpp': 'true', 'skia_use_system_libwebp': 'true', 'skia_use_system_libjpeg_turbo': 'true', 'skia_use_system_zlib': 'true', } js = gn_to_bp_utils.GenerateJSONFromGN(gn_args) def strip_slashes(lst): return {str(p.lstrip('/')) for p in lst} srcs = strip_slashes(js['targets']['//:libskqp_app']['sources']) cflags = strip_slashes(js['targets']['//:libskqp_app']['cflags']) cflags_cc = strip_slashes(js['targets']['//:libskqp_app']['cflags_cc']) local_includes = strip_slashes(js['targets']['//:libskqp_app']['include_dirs']) defines = {str(d) for d in js['targets']['//:libskqp_app']['defines']} gn_to_bp_utils.GrabDependentValues(js, '//:libskqp_app', 'sources', srcs, None) gn_to_bp_utils.GrabDependentValues(js, '//:libskqp_app', 'include_dirs', local_includes, 'freetype')
d['skia_enable_android_utils'] = 'true' d['skia_use_freetype'] = 'true' d['skia_use_fixed_gamma_text'] = 'true' d['skia_enable_fontmgr_custom_empty'] = 'true' d['skia_use_wuffs'] = 'true' return d gn_args = generate_args('"android"', True) gn_args_linux = generate_args('"linux"', False) gn_args_mac = generate_args('"mac"', False) gn_args_win = generate_args('"win"', False) gn_args_renderengine = generate_args('"android"', True, True) js = gn_to_bp_utils.GenerateJSONFromGN(gn_args) def strip_slashes(lst): return {str(p.lstrip('/')) for p in lst} android_srcs = strip_slashes(js['targets']['//:skia']['sources']) cflags = strip_slashes(js['targets']['//:skia']['cflags']) cflags_cc = strip_slashes(js['targets']['//:skia']['cflags_cc']) local_includes = strip_slashes(js['targets']['//:skia']['include_dirs']) export_includes = strip_slashes(js['targets']['//:public']['include_dirs']) gm_srcs = strip_slashes(js['targets']['//:gm']['sources']) gm_includes = strip_slashes(js['targets']['//:gm']['include_dirs'])
d['skia_use_xps'] = 'false' # BUILDCONFIG.gn expects these to be set when building for Windows, but # we're just creating Android.bp, so we don't need them. Populate with # some dummy values. d['win_vc'] = '"dummy_version"' d['win_sdk_version'] = '"dummy_version"' d['win_toolchain_version'] = '"dummy_version"' return d gn_args = generate_args('"android"', True) gn_args_linux = generate_args('"linux"', False) gn_args_mac = generate_args('"mac"', False) gn_args_win = generate_args('"win"', False) js = gn_to_bp_utils.GenerateJSONFromGN(gn_args) def strip_slashes(lst): return {str(p.lstrip('/')) for p in lst} android_srcs = strip_slashes(js['targets']['//:skia']['sources']) cflags = strip_slashes(js['targets']['//:skia']['cflags']) cflags_cc = strip_slashes(js['targets']['//:skia']['cflags_cc']) local_includes = strip_slashes(js['targets']['//:skia']['include_dirs']) export_includes = strip_slashes(js['targets']['//:public']['include_dirs']) dm_srcs = strip_slashes(js['targets']['//:dm']['sources']) dm_includes = strip_slashes(js['targets']['//:dm']['include_dirs']) nanobench_target = js['targets']['//:nanobench'] nanobench_srcs = strip_slashes(nanobench_target['sources'])
gn_args_linux = { 'is_official_build': 'true', 'skia_enable_tools': 'true', 'skia_enable_gpu': 'false', 'skia_use_libheif': 'false', 'skia_use_vulkan': 'false', 'target_cpu': '"none"', 'target_os': '"linux"', 'skia_enable_fontmgr_custom': 'false', 'skia_enable_fontmgr_custom_empty': 'true', 'skia_enable_fontmgr_android': 'false', 'skia_use_fontconfig': 'false', 'skia_use_fixed_gamma_text': 'true', } js = gn_to_bp_utils.GenerateJSONFromGN(gn_args) def strip_slashes(lst): return {str(p.lstrip('/')) for p in lst} android_srcs = strip_slashes(js['targets']['//:skia']['sources']) cflags = strip_slashes(js['targets']['//:skia']['cflags']) cflags_cc = strip_slashes(js['targets']['//:skia']['cflags_cc']) local_includes = strip_slashes(js['targets']['//:skia']['include_dirs']) export_includes = strip_slashes(js['targets']['//:public']['include_dirs']) dm_srcs = strip_slashes(js['targets']['//:dm']['sources']) dm_includes = strip_slashes(js['targets']['//:dm']['include_dirs'])