xref: /aosp_15_r20/external/cronet/build/android/java/templates/BuildConfig.template (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker// Copyright 2015 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker// Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker// found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker
5*6777b538SAndroid Build Coastguard Workerpackage org.chromium.build;
6*6777b538SAndroid Build Coastguard Worker
7*6777b538SAndroid Build Coastguard Worker#define Q(x) #x
8*6777b538SAndroid Build Coastguard Worker#define QUOTE(x) Q(x)
9*6777b538SAndroid Build Coastguard Worker
10*6777b538SAndroid Build Coastguard Worker#if defined(USE_FINAL)
11*6777b538SAndroid Build Coastguard Worker#define MAYBE_FINAL final
12*6777b538SAndroid Build Coastguard Worker#define MAYBE_ZERO = 0
13*6777b538SAndroid Build Coastguard Worker#define MAYBE_FALSE = false
14*6777b538SAndroid Build Coastguard Worker#else
15*6777b538SAndroid Build Coastguard Worker#define MAYBE_FINAL
16*6777b538SAndroid Build Coastguard Worker#define MAYBE_ZERO
17*6777b538SAndroid Build Coastguard Worker#define MAYBE_FALSE
18*6777b538SAndroid Build Coastguard Worker#endif
19*6777b538SAndroid Build Coastguard Worker
20*6777b538SAndroid Build Coastguard Worker/**
21*6777b538SAndroid Build Coastguard Worker *  Build configuration. Generated on a per-target basis.
22*6777b538SAndroid Build Coastguard Worker */
23*6777b538SAndroid Build Coastguard Workerpublic class BuildConfig {
24*6777b538SAndroid Build Coastguard Worker
25*6777b538SAndroid Build Coastguard Worker#if defined(_ENABLE_ASSERTS)
26*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean ENABLE_ASSERTS = true;
27*6777b538SAndroid Build Coastguard Worker#else
28*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean ENABLE_ASSERTS MAYBE_FALSE;
29*6777b538SAndroid Build Coastguard Worker#endif
30*6777b538SAndroid Build Coastguard Worker
31*6777b538SAndroid Build Coastguard Worker#if defined(_IS_UBSAN)
32*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_UBSAN = true;
33*6777b538SAndroid Build Coastguard Worker#else
34*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_UBSAN MAYBE_FALSE;
35*6777b538SAndroid Build Coastguard Worker#endif
36*6777b538SAndroid Build Coastguard Worker
37*6777b538SAndroid Build Coastguard Worker#if defined(_IS_CHROME_BRANDED)
38*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_CHROME_BRANDED = true;
39*6777b538SAndroid Build Coastguard Worker#else
40*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_CHROME_BRANDED MAYBE_FALSE;
41*6777b538SAndroid Build Coastguard Worker#endif
42*6777b538SAndroid Build Coastguard Worker
43*6777b538SAndroid Build Coastguard Worker    // The ID of the android string resource that stores the product version.
44*6777b538SAndroid Build Coastguard Worker    // This layer of indirection is necessary to make the resource dependency
45*6777b538SAndroid Build Coastguard Worker    // optional for android_apk targets/base_java (ex. for cronet).
46*6777b538SAndroid Build Coastguard Worker#if defined(_RESOURCES_VERSION_VARIABLE)
47*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL int R_STRING_PRODUCT_VERSION = _RESOURCES_VERSION_VARIABLE;
48*6777b538SAndroid Build Coastguard Worker#else
49*6777b538SAndroid Build Coastguard Worker    // Default value, do not use.
50*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL int R_STRING_PRODUCT_VERSION MAYBE_ZERO;
51*6777b538SAndroid Build Coastguard Worker#endif
52*6777b538SAndroid Build Coastguard Worker
53*6777b538SAndroid Build Coastguard Worker    // Minimum SDK Version supported by this apk.
54*6777b538SAndroid Build Coastguard Worker    // Be cautious when using this value, as it can happen that older apks get
55*6777b538SAndroid Build Coastguard Worker    // installed on newer Android version (e.g. when a device goes through a
56*6777b538SAndroid Build Coastguard Worker    // system upgrade). It is also convenient for developing to have all
57*6777b538SAndroid Build Coastguard Worker    // features available through a single APK.
58*6777b538SAndroid Build Coastguard Worker    // However, it's pretty safe to assument that a feature specific to KitKat
59*6777b538SAndroid Build Coastguard Worker    // will never be needed in an APK with MIN_SDK_VERSION = Oreo.
60*6777b538SAndroid Build Coastguard Worker#if defined(_MIN_SDK_VERSION)
61*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL int MIN_SDK_VERSION = _MIN_SDK_VERSION;
62*6777b538SAndroid Build Coastguard Worker#else
63*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL int MIN_SDK_VERSION = 1;
64*6777b538SAndroid Build Coastguard Worker#endif
65*6777b538SAndroid Build Coastguard Worker
66*6777b538SAndroid Build Coastguard Worker    // Value of android:versionCode.
67*6777b538SAndroid Build Coastguard Worker#if defined(_VERSION_CODE)
68*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL long VERSION_CODE = _VERSION_CODE;
69*6777b538SAndroid Build Coastguard Worker#else
70*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL long VERSION_CODE = 1;
71*6777b538SAndroid Build Coastguard Worker#endif
72*6777b538SAndroid Build Coastguard Worker
73*6777b538SAndroid Build Coastguard Worker#if defined(_BUNDLES_SUPPORTED)
74*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean BUNDLES_SUPPORTED = true;
75*6777b538SAndroid Build Coastguard Worker#else
76*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean BUNDLES_SUPPORTED MAYBE_FALSE;
77*6777b538SAndroid Build Coastguard Worker#endif
78*6777b538SAndroid Build Coastguard Worker
79*6777b538SAndroid Build Coastguard Worker#if defined(_IS_INCREMENTAL_INSTALL)
80*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_INCREMENTAL_INSTALL = true;
81*6777b538SAndroid Build Coastguard Worker#else
82*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_INCREMENTAL_INSTALL MAYBE_FALSE;
83*6777b538SAndroid Build Coastguard Worker#endif
84*6777b538SAndroid Build Coastguard Worker
85*6777b538SAndroid Build Coastguard Worker#if defined(_ISOLATED_SPLITS_ENABLED)
86*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean ISOLATED_SPLITS_ENABLED = true;
87*6777b538SAndroid Build Coastguard Worker#else
88*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean ISOLATED_SPLITS_ENABLED MAYBE_FALSE;
89*6777b538SAndroid Build Coastguard Worker#endif
90*6777b538SAndroid Build Coastguard Worker
91*6777b538SAndroid Build Coastguard Worker#if defined(_IS_FOR_TEST)
92*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_FOR_TEST = true;
93*6777b538SAndroid Build Coastguard Worker#else
94*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean IS_FOR_TEST MAYBE_FALSE;
95*6777b538SAndroid Build Coastguard Worker#endif
96*6777b538SAndroid Build Coastguard Worker
97*6777b538SAndroid Build Coastguard Worker#if defined(_WRITE_CLANG_PROFILING_DATA)
98*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean WRITE_CLANG_PROFILING_DATA = true;
99*6777b538SAndroid Build Coastguard Worker#else
100*6777b538SAndroid Build Coastguard Worker    public static MAYBE_FINAL boolean WRITE_CLANG_PROFILING_DATA MAYBE_FALSE;
101*6777b538SAndroid Build Coastguard Worker#endif
102*6777b538SAndroid Build Coastguard Worker}
103