xref: /aosp_15_r20/system/linkerconfig/contents/tests/configuration/include/mockenv.h (revision e5eeaa8e05bc25a862c0c861bda7c8a6bfb42dad)
1*e5eeaa8eSAndroid Build Coastguard Worker /*
2*e5eeaa8eSAndroid Build Coastguard Worker  * Copyright (C) 2019 The Android Open Source Project
3*e5eeaa8eSAndroid Build Coastguard Worker  *
4*e5eeaa8eSAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
5*e5eeaa8eSAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
6*e5eeaa8eSAndroid Build Coastguard Worker  * You may obtain a copy of the License at
7*e5eeaa8eSAndroid Build Coastguard Worker  *
8*e5eeaa8eSAndroid Build Coastguard Worker  *      http://www.apache.org/licenses/LICENSE-2.0
9*e5eeaa8eSAndroid Build Coastguard Worker  *
10*e5eeaa8eSAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
11*e5eeaa8eSAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
12*e5eeaa8eSAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*e5eeaa8eSAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
14*e5eeaa8eSAndroid Build Coastguard Worker  * limitations under the License.
15*e5eeaa8eSAndroid Build Coastguard Worker  */
16*e5eeaa8eSAndroid Build Coastguard Worker #pragma once
17*e5eeaa8eSAndroid Build Coastguard Worker 
18*e5eeaa8eSAndroid Build Coastguard Worker #include "linkerconfig/variables.h"
19*e5eeaa8eSAndroid Build Coastguard Worker 
MockGenericVariables()20*e5eeaa8eSAndroid Build Coastguard Worker inline void MockGenericVariables() {
21*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("ro.treble.enabled",
22*e5eeaa8eSAndroid Build Coastguard Worker                                                       "true");
23*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("ro.vndk.version", "99");
24*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("ro.product.vndk.version",
25*e5eeaa8eSAndroid Build Coastguard Worker                                                       "99");
26*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("VENDOR_VNDK_VERSION",
27*e5eeaa8eSAndroid Build Coastguard Worker                                                       "99");
28*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("PRODUCT_VNDK_VERSION",
29*e5eeaa8eSAndroid Build Coastguard Worker                                                       "99");
30*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("PRODUCT", "product");
31*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("SYSTEM_EXT",
32*e5eeaa8eSAndroid Build Coastguard Worker                                                       "system_ext");
33*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("LLNDK_LIBRARIES_VENDOR",
34*e5eeaa8eSAndroid Build Coastguard Worker                                                       "llndk_libraries");
35*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("LLNDK_LIBRARIES_PRODUCT",
36*e5eeaa8eSAndroid Build Coastguard Worker                                                       "llndk_libraries");
37*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
38*e5eeaa8eSAndroid Build Coastguard Worker       "SANITIZER_RUNTIME_LIBRARIES", "sanitizer_runtime_libraries");
39*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
40*e5eeaa8eSAndroid Build Coastguard Worker       "PRIVATE_LLNDK_LIBRARIES_VENDOR", "private_llndk_libraries");
41*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
42*e5eeaa8eSAndroid Build Coastguard Worker       "PRIVATE_LLNDK_LIBRARIES_PRODUCT", "private_llndk_libraries");
43*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
44*e5eeaa8eSAndroid Build Coastguard Worker       "VNDK_SAMEPROCESS_LIBRARIES_VENDOR", "vndk_sameprocess_libraries");
45*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
46*e5eeaa8eSAndroid Build Coastguard Worker       "VNDK_SAMEPROCESS_LIBRARIES_PRODUCT", "vndk_sameprocess_libraries");
47*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
48*e5eeaa8eSAndroid Build Coastguard Worker       "VNDK_CORE_LIBRARIES_VENDOR", "vndk_core_libraries");
49*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
50*e5eeaa8eSAndroid Build Coastguard Worker       "VNDK_CORE_LIBRARIES_PRODUCT", "vndk_core_libraries");
51*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
52*e5eeaa8eSAndroid Build Coastguard Worker       "VNDK_USING_CORE_VARIANT_LIBRARIES", "");
53*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
54*e5eeaa8eSAndroid Build Coastguard Worker       "SANITIZER_DEFAULT_VENDOR", "sanitizer_default_libraries");
55*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
56*e5eeaa8eSAndroid Build Coastguard Worker       "SANITIZER_DEFAULT_PRODUCT", "sanitizer_default_libraries");
57*e5eeaa8eSAndroid Build Coastguard Worker }
58*e5eeaa8eSAndroid Build Coastguard Worker 
MockVndkVersion(std::string vndk_version)59*e5eeaa8eSAndroid Build Coastguard Worker inline void MockVndkVersion(std::string vndk_version) {
60*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("VENDOR_VNDK_VERSION",
61*e5eeaa8eSAndroid Build Coastguard Worker                                                       vndk_version);
62*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue("PRODUCT_VNDK_VERSION",
63*e5eeaa8eSAndroid Build Coastguard Worker                                                       vndk_version);
64*e5eeaa8eSAndroid Build Coastguard Worker }
65*e5eeaa8eSAndroid Build Coastguard Worker 
MockVndkUsingCoreVariant()66*e5eeaa8eSAndroid Build Coastguard Worker inline void MockVndkUsingCoreVariant() {
67*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::Variables::AddValue(
68*e5eeaa8eSAndroid Build Coastguard Worker       "VNDK_USING_CORE_VARIANT_LIBRARIES", "vndk_using_core_variant_libraries");
69*e5eeaa8eSAndroid Build Coastguard Worker }
70*e5eeaa8eSAndroid Build Coastguard Worker 
CreateTestVndkApex()71*e5eeaa8eSAndroid Build Coastguard Worker inline android::linkerconfig::modules::ApexInfo CreateTestVndkApex() {
72*e5eeaa8eSAndroid Build Coastguard Worker   android::linkerconfig::modules::ApexInfo vndk_apex;
73*e5eeaa8eSAndroid Build Coastguard Worker   vndk_apex.name = "com.android.vndk.v99";
74*e5eeaa8eSAndroid Build Coastguard Worker   return vndk_apex;
75*e5eeaa8eSAndroid Build Coastguard Worker }
76