blob: 649b6c58f2a07d7ec53d2259cd2565aed5cfccd7 [file] [log] [blame]
Colin Cross3e3e72d2017-06-22 17:20:19 -07001// Copyright 2017 Google Inc. All rights reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package config
16
17import (
18 "strings"
19
20 "android/soong/android"
21)
22
23func init() {
24 android.RegisterMakeVarsProvider(pctx, makeVarsProvider)
25}
26
27func makeVarsProvider(ctx android.MakeVarsContext) {
Pete Gillin0638dfc2020-07-01 10:48:14 +010028 ctx.Strict("FRAMEWORK_LIBRARIES", strings.Join(FrameworkLibraries, " "))
29
30 // These are used by make when LOCAL_PRIVATE_PLATFORM_APIS is set (equivalent to platform_apis in blueprint):
Jihoon Kangb5078312023-03-29 23:25:49 +000031 ctx.Strict("LEGACY_CORE_PLATFORM_BOOTCLASSPATH_LIBRARIES",
Jihoon Kang6c0df882023-06-14 22:43:25 +000032 strings.Join(LegacyCorePlatformBootclasspathLibraries, " "))
33 ctx.Strict("LEGACY_CORE_PLATFORM_SYSTEM_MODULES", LegacyCorePlatformSystemModules)
Colin Cross64162712017-08-08 13:17:59 -070034
Colin Cross64162712017-08-08 13:17:59 -070035 ctx.Strict("ANDROID_JAVA_HOME", "${JavaHome}")
Tobias Thierer06ae5822017-12-08 18:03:43 +000036 ctx.Strict("ANDROID_JAVA8_HOME", "prebuilts/jdk/jdk8/${hostPrebuiltTag}")
Colin Cross64162712017-08-08 13:17:59 -070037 ctx.Strict("ANDROID_JAVA_TOOLCHAIN", "${JavaToolchain}")
Sasha Smundak26c6d9e2019-06-11 13:30:13 -070038 ctx.Strict("JAVA", "${JavaCmd} ${JavaVmFlags}")
39 ctx.Strict("JAVAC", "${JavacCmd} ${JavacVmFlags}")
Colin Cross64162712017-08-08 13:17:59 -070040 ctx.Strict("JAR", "${JarCmd}")
Colin Crossded8a972017-08-15 14:27:52 -070041 ctx.Strict("JAR_ARGS", "${JarArgsCmd}")
Colin Cross64162712017-08-08 13:17:59 -070042 ctx.Strict("JAVADOC", "${JavadocCmd}")
43 ctx.Strict("COMMON_JDK_FLAGS", "${CommonJdkFlags}")
Alan Leung9f319112017-11-30 15:50:39 -080044
Ian Zerny727ab902022-04-22 11:41:36 +020045 ctx.Strict("D8", "${D8Cmd}")
46 ctx.Strict("R8", "${R8Cmd}")
47 ctx.Strict("D8_COMMAND", "${D8Cmd} ${D8Flags}")
48 ctx.Strict("R8_COMMAND", "${R8Cmd} ${R8Flags}")
Alan Leung9f319112017-11-30 15:50:39 -080049
Nan Zhanged19fc32017-10-19 13:06:22 -070050 ctx.Strict("TURBINE", "${TurbineJar}")
Colin Cross2aad9c22017-08-14 14:17:37 -070051
Colin Cross66548102018-06-19 22:47:35 -070052 if ctx.Config().RunErrorProne() {
53 ctx.Strict("ERROR_PRONE_JARS", strings.Join(ErrorProneClasspath, " "))
54 ctx.Strict("ERROR_PRONE_FLAGS", "${ErrorProneFlags}")
55 ctx.Strict("ERROR_PRONE_CHECKS", "${ErrorProneChecks}")
Colin Cross2aad9c22017-08-14 14:17:37 -070056 }
Tobias Thierer77d0b412017-08-31 16:08:39 +010057
Sasha Smundak26c6d9e2019-06-11 13:30:13 -070058 ctx.Strict("TARGET_JAVAC", "${JavacCmd} ${JavacVmFlags} ${CommonJdkFlags}")
59 ctx.Strict("HOST_JAVAC", "${JavacCmd} ${JavacVmFlags} ${CommonJdkFlags}")
Colin Cross66548102018-06-19 22:47:35 -070060
Colin Cross997262f2018-06-19 22:49:39 -070061 ctx.Strict("JLINK", "${JlinkCmd}")
62 ctx.Strict("JMOD", "${JmodCmd}")
Colin Crossa4820652017-10-17 13:56:52 -070063
64 ctx.Strict("SOONG_JAVAC_WRAPPER", "${SoongJavacWrapper}")
Colin Cross43f08db2018-11-12 10:13:39 -080065 ctx.Strict("DEXPREOPT_GEN", "${DexpreoptGen}")
Colin Cross436b7652018-03-15 16:24:10 -070066 ctx.Strict("ZIPSYNC", "${ZipSyncCmd}")
Colin Crosscb933592017-11-22 13:49:43 -080067
68 ctx.Strict("JACOCO_CLI_JAR", "${JacocoCLIJar}")
Chris Gross2f748692020-06-24 20:36:59 +000069 ctx.Strict("DEFAULT_JACOCO_EXCLUDE_FILTER", strings.Join(DefaultMakeJacocoExcludeFilter, ","))
Colin Cross66f78822018-05-02 12:58:28 -070070
71 ctx.Strict("EXTRACT_JAR_PACKAGES", "${ExtractJarPackagesCmd}")
Colin Cross8bb10e82018-06-07 16:46:02 -070072
Colin Cross72119102019-05-20 13:14:18 -070073 ctx.Strict("MANIFEST_CHECK", "${ManifestCheckCmd}")
Colin Cross8bb10e82018-06-07 16:46:02 -070074 ctx.Strict("MANIFEST_FIXER", "${ManifestFixerCmd}")
Colin Cross31656952018-05-24 16:11:20 -070075
Colin Cross87ecbfe2019-02-26 22:14:04 -080076 ctx.Strict("ANDROID_MANIFEST_MERGER", "${ManifestMergerCmd}")
Colin Cross8faf8fc2019-01-16 15:15:52 -080077
Andrei Onea23fea042020-08-12 16:48:23 +010078 ctx.Strict("CLASS2NONSDKLIST", "${Class2NonSdkList}")
Colin Cross8faf8fc2019-01-16 15:15:52 -080079 ctx.Strict("HIDDENAPI", "${HiddenAPI}")
Colin Cross6db4d4e2019-02-21 14:58:58 -080080
Colin Crossbdf95142019-08-08 12:56:34 -070081 ctx.Strict("AIDL", "${AidlCmd}")
82 ctx.Strict("AAPT2", "${Aapt2Cmd}")
83 ctx.Strict("ZIPALIGN", "${ZipAlign}")
84 ctx.Strict("SIGNAPK_JAR", "${SignapkCmd}")
85 ctx.Strict("SIGNAPK_JNI_LIBRARY_PATH", "${SignapkJniLibrary}")
86
87 ctx.Strict("SOONG_ZIP", "${SoongZipCmd}")
88 ctx.Strict("MERGE_ZIPS", "${MergeZipsCmd}")
89 ctx.Strict("ZIP2ZIP", "${Zip2ZipCmd}")
90
91 ctx.Strict("ZIPTIME", "${Ziptime}")
92
Colin Cross3e3e72d2017-06-22 17:20:19 -070093}