xref: /aosp_15_r20/external/skia/gn/skqp_gn_args.py (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
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