xref: /aosp_15_r20/external/angle/build/android/gradle/android.jinja (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Worker{# Copyright 2016 The Chromium Authors #}
2*8975f5c5SAndroid Build Coastguard Worker{# Use of this source code is governed by a BSD-style license that can be #}
3*8975f5c5SAndroid Build Coastguard Worker{# found in the LICENSE file. #}
4*8975f5c5SAndroid Build Coastguard Worker{% macro expand_sourceset(variables, prefix) %}
5*8975f5c5SAndroid Build Coastguard Worker{% if variables is defined %}
6*8975f5c5SAndroid Build Coastguard Worker        {{ prefix }} {
7*8975f5c5SAndroid Build Coastguard Worker{% if variables.android_manifest is defined %}
8*8975f5c5SAndroid Build Coastguard Worker            manifest.srcFile "{{ variables.android_manifest }}"
9*8975f5c5SAndroid Build Coastguard Worker{% endif %}
10*8975f5c5SAndroid Build Coastguard Worker{% if variables.java_dirs is defined %}
11*8975f5c5SAndroid Build Coastguard Worker            java.srcDirs = [
12*8975f5c5SAndroid Build Coastguard Worker{% for path in variables.java_dirs %}
13*8975f5c5SAndroid Build Coastguard Worker                "{{ path }}",
14*8975f5c5SAndroid Build Coastguard Worker{% endfor %}
15*8975f5c5SAndroid Build Coastguard Worker            ]
16*8975f5c5SAndroid Build Coastguard Worker{% endif %}
17*8975f5c5SAndroid Build Coastguard Worker{% if variables.java_excludes is defined %}
18*8975f5c5SAndroid Build Coastguard Worker            java.filter.exclude([
19*8975f5c5SAndroid Build Coastguard Worker{% for path in variables.java_excludes %}
20*8975f5c5SAndroid Build Coastguard Worker                "{{ path }}",
21*8975f5c5SAndroid Build Coastguard Worker{% endfor %}
22*8975f5c5SAndroid Build Coastguard Worker            ])
23*8975f5c5SAndroid Build Coastguard Worker{% endif %}
24*8975f5c5SAndroid Build Coastguard Worker{% if variables.jni_libs is defined %}
25*8975f5c5SAndroid Build Coastguard Worker            jniLibs.srcDirs = [
26*8975f5c5SAndroid Build Coastguard Worker{% for path in variables.jni_libs %}
27*8975f5c5SAndroid Build Coastguard Worker                "{{ path }}",
28*8975f5c5SAndroid Build Coastguard Worker{% endfor %}
29*8975f5c5SAndroid Build Coastguard Worker            ]
30*8975f5c5SAndroid Build Coastguard Worker{% endif %}
31*8975f5c5SAndroid Build Coastguard Worker{% if variables.res_dirs is defined %}
32*8975f5c5SAndroid Build Coastguard Worker            res.srcDirs = [
33*8975f5c5SAndroid Build Coastguard Worker{% for path in variables.res_dirs %}
34*8975f5c5SAndroid Build Coastguard Worker                "{{ path }}",
35*8975f5c5SAndroid Build Coastguard Worker{% endfor %}
36*8975f5c5SAndroid Build Coastguard Worker            ]
37*8975f5c5SAndroid Build Coastguard Worker{% endif %}
38*8975f5c5SAndroid Build Coastguard Worker        }
39*8975f5c5SAndroid Build Coastguard Worker{% endif %}
40*8975f5c5SAndroid Build Coastguard Worker{% endmacro %}
41*8975f5c5SAndroid Build Coastguard Worker// Generated by //build/android/generate_gradle.py
42*8975f5c5SAndroid Build Coastguard Worker
43*8975f5c5SAndroid Build Coastguard Worker{% if template_type in ('android_library', 'android_junit') %}
44*8975f5c5SAndroid Build Coastguard Workerapply plugin: "com.android.library"
45*8975f5c5SAndroid Build Coastguard Worker{% elif template_type == 'android_apk' %}
46*8975f5c5SAndroid Build Coastguard Workerapply plugin: "com.android.application"
47*8975f5c5SAndroid Build Coastguard Worker{% endif %}
48*8975f5c5SAndroid Build Coastguard Worker
49*8975f5c5SAndroid Build Coastguard Workerandroid {
50*8975f5c5SAndroid Build Coastguard Worker    compileSdkVersion "{{ compile_sdk_version }}"
51*8975f5c5SAndroid Build Coastguard Worker    namespace = "org.chromium.chrome"
52*8975f5c5SAndroid Build Coastguard Worker
53*8975f5c5SAndroid Build Coastguard Worker    defaultConfig {
54*8975f5c5SAndroid Build Coastguard Worker        vectorDrawables.useSupportLibrary = true
55*8975f5c5SAndroid Build Coastguard Worker        minSdkVersion {{ min_sdk_version }}
56*8975f5c5SAndroid Build Coastguard Worker        targetSdkVersion {{ target_sdk_version }}
57*8975f5c5SAndroid Build Coastguard Worker    }
58*8975f5c5SAndroid Build Coastguard Worker
59*8975f5c5SAndroid Build Coastguard Worker    compileOptions {
60*8975f5c5SAndroid Build Coastguard Worker        sourceCompatibility JavaVersion.VERSION_17
61*8975f5c5SAndroid Build Coastguard Worker        targetCompatibility JavaVersion.VERSION_17
62*8975f5c5SAndroid Build Coastguard Worker    }
63*8975f5c5SAndroid Build Coastguard Worker
64*8975f5c5SAndroid Build Coastguard Worker{% if native is defined %}
65*8975f5c5SAndroid Build Coastguard Worker    externalNativeBuild {
66*8975f5c5SAndroid Build Coastguard Worker        cmake {
67*8975f5c5SAndroid Build Coastguard Worker            path "CMakeLists.txt"
68*8975f5c5SAndroid Build Coastguard Worker        }
69*8975f5c5SAndroid Build Coastguard Worker    }
70*8975f5c5SAndroid Build Coastguard Worker{% endif %}
71*8975f5c5SAndroid Build Coastguard Worker
72*8975f5c5SAndroid Build Coastguard Worker    sourceSets {
73*8975f5c5SAndroid Build Coastguard Worker{% for name in ['main', 'test', 'androidTest', 'debug', 'release'] %}
74*8975f5c5SAndroid Build Coastguard Worker        {{ name }} {
75*8975f5c5SAndroid Build Coastguard Worker            aidl.srcDirs = []
76*8975f5c5SAndroid Build Coastguard Worker            assets.srcDirs = []
77*8975f5c5SAndroid Build Coastguard Worker            java.srcDirs = []
78*8975f5c5SAndroid Build Coastguard Worker            jni.srcDirs = []
79*8975f5c5SAndroid Build Coastguard Worker            renderscript.srcDirs = []
80*8975f5c5SAndroid Build Coastguard Worker            res.srcDirs = []
81*8975f5c5SAndroid Build Coastguard Worker            resources.srcDirs = []
82*8975f5c5SAndroid Build Coastguard Worker        }
83*8975f5c5SAndroid Build Coastguard Worker{% endfor %}
84*8975f5c5SAndroid Build Coastguard Worker
85*8975f5c5SAndroid Build Coastguard Worker{{ expand_sourceset(main, 'main') }}
86*8975f5c5SAndroid Build Coastguard Worker{{ expand_sourceset(test, 'test') }}
87*8975f5c5SAndroid Build Coastguard Worker{% if android_test is defined %}
88*8975f5c5SAndroid Build Coastguard Worker{% for t in android_test %}
89*8975f5c5SAndroid Build Coastguard Worker{{ expand_sourceset(t, 'androidTest') }}
90*8975f5c5SAndroid Build Coastguard Worker{% endfor %}
91*8975f5c5SAndroid Build Coastguard Worker{% endif %}
92*8975f5c5SAndroid Build Coastguard Worker    }
93*8975f5c5SAndroid Build Coastguard Worker}
94*8975f5c5SAndroid Build Coastguard Worker
95*8975f5c5SAndroid Build Coastguard Worker{% include 'dependencies.jinja' %}
96*8975f5c5SAndroid Build Coastguard Worker
97*8975f5c5SAndroid Build Coastguard WorkerafterEvaluate {
98*8975f5c5SAndroid Build Coastguard Worker    def tasksToDisable = tasks.findAll {
99*8975f5c5SAndroid Build Coastguard Worker        return (it.name.equals('generateDebugSources')  // causes unwanted AndroidManifest.java
100*8975f5c5SAndroid Build Coastguard Worker                || it.name.equals('generateReleaseSources')
101*8975f5c5SAndroid Build Coastguard Worker                || it.name.endsWith('BuildConfig')  // causes unwanted BuildConfig.java
102*8975f5c5SAndroid Build Coastguard Worker                || it.name.equals('preDebugAndroidTestBuild')
103*8975f5c5SAndroid Build Coastguard Worker{% if not use_gradle_process_resources %}
104*8975f5c5SAndroid Build Coastguard Worker                || it.name.endsWith('Assets')
105*8975f5c5SAndroid Build Coastguard Worker                || it.name.endsWith('Resources')
106*8975f5c5SAndroid Build Coastguard Worker                || it.name.endsWith('ResValues')
107*8975f5c5SAndroid Build Coastguard Worker{% endif %}
108*8975f5c5SAndroid Build Coastguard Worker                || it.name.endsWith('Aidl')
109*8975f5c5SAndroid Build Coastguard Worker                || it.name.endsWith('Renderscript')
110*8975f5c5SAndroid Build Coastguard Worker                || it.name.endsWith('Shaders'))
111*8975f5c5SAndroid Build Coastguard Worker    }
112*8975f5c5SAndroid Build Coastguard Worker    tasksToDisable.each { Task task ->
113*8975f5c5SAndroid Build Coastguard Worker      task.enabled = false
114*8975f5c5SAndroid Build Coastguard Worker    }
115*8975f5c5SAndroid Build Coastguard Worker}
116