Retry: Generate soong_config_module_type inline in the snapshot am: f3c17ef416
Original change: https://android-review.googlesource.com/c/platform/packages/modules/common/+/2165046 Change-Id: If90ccbc28cdc8ed17cca58a126d8d8d6bc187cc5 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -108,9 +108,8 @@ class SoongConfigBoilerplateInserter(SoongConfigVarTransformation):
|
|||||||
through a Soong configuration variable.
|
through a Soong configuration variable.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# The bp file containing the definitions of the configuration module types
|
# The configuration variable that will control the prefer setting.
|
||||||
# to use in the sdk.
|
configVar: ConfigVar
|
||||||
configBpDefFile: str
|
|
||||||
|
|
||||||
# The prefix to use for the soong config module types.
|
# The prefix to use for the soong config module types.
|
||||||
configModuleTypePrefix: str
|
configModuleTypePrefix: str
|
||||||
@@ -202,31 +201,13 @@ class SoongConfigBoilerplateInserter(SoongConfigVarTransformation):
|
|||||||
content_lines.extend(module_content)
|
content_lines.extend(module_content)
|
||||||
content_lines.append("}")
|
content_lines.append("}")
|
||||||
|
|
||||||
if self.configBpDefFile:
|
|
||||||
# Add the soong_config_module_type_import module definition that
|
|
||||||
# imports the soong config module types into this bp file to the
|
|
||||||
# header lines so that they appear before any uses.
|
|
||||||
module_types = "\n".join([
|
|
||||||
f' "{self.config_module_type(mt)}",'
|
|
||||||
for mt in sorted(config_module_types)
|
|
||||||
])
|
|
||||||
header_lines.append(f"""
|
|
||||||
// Soong config variable stanza added by {producer.script}.
|
|
||||||
soong_config_module_type_import {{
|
|
||||||
from: "{self.configBpDefFile}",
|
|
||||||
module_types: [
|
|
||||||
{module_types}
|
|
||||||
],
|
|
||||||
}}
|
|
||||||
""")
|
|
||||||
else:
|
|
||||||
# Add the soong_config_module_type module definitions to the header
|
# Add the soong_config_module_type module definitions to the header
|
||||||
# lines so that they appear before any uses.
|
# lines so that they appear before any uses.
|
||||||
header_lines.append("")
|
header_lines.append("")
|
||||||
for module_type in sorted(config_module_types):
|
for module_type in sorted(config_module_types):
|
||||||
# Create the corresponding soong config module type name by
|
# Create the corresponding soong config module type name by adding
|
||||||
# adding the prefix.
|
# the prefix.
|
||||||
config_module_type = self.config_module_type(module_type)
|
config_module_type = self.configModuleTypePrefix + module_type
|
||||||
header_lines.append(f"""
|
header_lines.append(f"""
|
||||||
// Soong config variable module type added by {producer.script}.
|
// Soong config variable module type added by {producer.script}.
|
||||||
soong_config_module_type {{
|
soong_config_module_type {{
|
||||||
@@ -823,13 +804,6 @@ class MainlineModule:
|
|||||||
name="module_build_from_source",
|
name="module_build_from_source",
|
||||||
)
|
)
|
||||||
|
|
||||||
# The bp file containing the definitions of the configuration module types
|
|
||||||
# to use in the sdk.
|
|
||||||
configBpDefFile: str = "packages/modules/common/Android.bp"
|
|
||||||
|
|
||||||
# The prefix to use for the soong config module types.
|
|
||||||
configModuleTypePrefix: str = "module_"
|
|
||||||
|
|
||||||
for_r_build: typing.Optional[ForRBuild] = None
|
for_r_build: typing.Optional[ForRBuild] = None
|
||||||
|
|
||||||
# The last release on which this module was optional.
|
# The last release on which this module was optional.
|
||||||
@@ -873,13 +847,11 @@ class MainlineModule:
|
|||||||
"""Returns true for bundled modules. See BundledMainlineModule."""
|
"""Returns true for bundled modules. See BundledMainlineModule."""
|
||||||
return False
|
return False
|
||||||
|
|
||||||
def transformations(self, build_release):
|
def transformations(self, build_release, sdk_type):
|
||||||
"""Returns the transformations to apply to this module's snapshot(s)."""
|
"""Returns the transformations to apply to this module's snapshot(s)."""
|
||||||
transformations = []
|
transformations = []
|
||||||
|
|
||||||
config_var = self.configVar
|
config_var = self.configVar
|
||||||
config_module_type_prefix = self.configModuleTypePrefix
|
|
||||||
config_bp_def_file = self.configBpDefFile
|
|
||||||
|
|
||||||
# If the module is optional then it needs its own Soong config
|
# If the module is optional then it needs its own Soong config
|
||||||
# variable to allow it to be managed separately from other modules.
|
# variable to allow it to be managed separately from other modules.
|
||||||
@@ -889,18 +861,16 @@ class MainlineModule:
|
|||||||
namespace=f"{self.short_name}_module",
|
namespace=f"{self.short_name}_module",
|
||||||
name="source_build",
|
name="source_build",
|
||||||
)
|
)
|
||||||
config_module_type_prefix = f"{self.short_name}_prebuilt_"
|
|
||||||
# Optional modules don't have their own config_bp_def_file so
|
|
||||||
# they have to generate the soong_config_module_types inline.
|
|
||||||
config_bp_def_file = ""
|
|
||||||
|
|
||||||
prefer_handling = build_release.preferHandling
|
prefer_handling = build_release.preferHandling
|
||||||
if prefer_handling == PreferHandling.SOONG_CONFIG:
|
if prefer_handling == PreferHandling.SOONG_CONFIG:
|
||||||
|
sdk_type_prefix = sdk_type.configModuleTypePrefix
|
||||||
|
config_module_type_prefix = \
|
||||||
|
f"{self.short_name}{sdk_type_prefix}_prebuilt_"
|
||||||
inserter = SoongConfigBoilerplateInserter(
|
inserter = SoongConfigBoilerplateInserter(
|
||||||
"Android.bp",
|
"Android.bp",
|
||||||
configVar=config_var,
|
configVar=config_var,
|
||||||
configModuleTypePrefix=config_module_type_prefix,
|
configModuleTypePrefix=config_module_type_prefix)
|
||||||
configBpDefFile=config_bp_def_file)
|
|
||||||
transformations.append(inserter)
|
transformations.append(inserter)
|
||||||
elif prefer_handling == PreferHandling.USE_SOURCE_CONFIG_VAR_PROPERTY:
|
elif prefer_handling == PreferHandling.USE_SOURCE_CONFIG_VAR_PROPERTY:
|
||||||
transformation = UseSourceConfigVarTransformation(
|
transformation = UseSourceConfigVarTransformation(
|
||||||
@@ -928,7 +898,7 @@ class BundledMainlineModule(MainlineModule):
|
|||||||
def is_bundled(self):
|
def is_bundled(self):
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def transformations(self, build_release):
|
def transformations(self, build_release, sdk_type):
|
||||||
# Bundled modules are only used on thin branches where the corresponding
|
# Bundled modules are only used on thin branches where the corresponding
|
||||||
# sources are absent, so skip transformations and keep the default
|
# sources are absent, so skip transformations and keep the default
|
||||||
# `prefer: false`.
|
# `prefer: false`.
|
||||||
@@ -960,8 +930,6 @@ MAINLINE_MODULES = [
|
|||||||
namespace="art_module",
|
namespace="art_module",
|
||||||
name="source_build",
|
name="source_build",
|
||||||
),
|
),
|
||||||
configBpDefFile="prebuilts/module_sdk/art/SoongConfig.bp",
|
|
||||||
configModuleTypePrefix="art_prebuilt_",
|
|
||||||
),
|
),
|
||||||
MainlineModule(
|
MainlineModule(
|
||||||
apex="com.android.btservices",
|
apex="com.android.btservices",
|
||||||
@@ -1262,7 +1230,8 @@ class SdkDistProducer:
|
|||||||
|
|
||||||
sdk_dist_subdir = os.path.join(sdk_dist_dir, module.apex, subdir)
|
sdk_dist_subdir = os.path.join(sdk_dist_dir, module.apex, subdir)
|
||||||
sdk_path = sdk_snapshot_zip_file(snapshots_dir, sdk, sdk_version)
|
sdk_path = sdk_snapshot_zip_file(snapshots_dir, sdk, sdk_version)
|
||||||
transformations = module.transformations(build_release)
|
sdk_type = sdk_type_from_name(sdk)
|
||||||
|
transformations = module.transformations(build_release, sdk_type)
|
||||||
self.dist_sdk_snapshot_zip(sdk_path, sdk_dist_subdir, transformations)
|
self.dist_sdk_snapshot_zip(sdk_path, sdk_dist_subdir, transformations)
|
||||||
|
|
||||||
def dist_sdk_snapshot_zip(self, src_sdk_zip, sdk_dist_dir, transformations):
|
def dist_sdk_snapshot_zip(self, src_sdk_zip, sdk_dist_dir, transformations):
|
||||||
@@ -1409,15 +1378,24 @@ def google_to_aosp_name(name):
|
|||||||
class SdkType:
|
class SdkType:
|
||||||
name: str
|
name: str
|
||||||
|
|
||||||
|
configModuleTypePrefix: str
|
||||||
|
|
||||||
providesApis: bool = False
|
providesApis: bool = False
|
||||||
|
|
||||||
|
|
||||||
Sdk = SdkType(
|
Sdk = SdkType(
|
||||||
name="sdk",
|
name="sdk",
|
||||||
|
configModuleTypePrefix="",
|
||||||
providesApis=True,
|
providesApis=True,
|
||||||
)
|
)
|
||||||
HostExports = SdkType(name="host-exports")
|
HostExports = SdkType(
|
||||||
TestExports = SdkType(name="test-exports")
|
name="host-exports",
|
||||||
|
configModuleTypePrefix="_host_exports",
|
||||||
|
)
|
||||||
|
TestExports = SdkType(
|
||||||
|
name="test-exports",
|
||||||
|
configModuleTypePrefix="_test_exports",
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def sdk_type_from_name(name):
|
def sdk_type_from_name(name):
|
||||||
|
|||||||
@@ -417,15 +417,14 @@ class TestAndroidBpTransformations(unittest.TestCase):
|
|||||||
"""Tests the transformations applied to a common mainline sdk on S.
|
"""Tests the transformations applied to a common mainline sdk on S.
|
||||||
|
|
||||||
This uses ipsec as an example of a common mainline sdk. This checks
|
This uses ipsec as an example of a common mainline sdk. This checks
|
||||||
that the correct Soong config module types and variables are used and
|
that the general Soong config module types and variables are used.
|
||||||
that it imports the definitions from the correct location.
|
|
||||||
"""
|
"""
|
||||||
src = read_test_data("ipsec_Android.bp.input")
|
src = read_test_data("ipsec_Android.bp.input")
|
||||||
|
|
||||||
expected = read_test_data("ipsec_Android.bp.expected")
|
expected = read_test_data("ipsec_Android.bp.expected")
|
||||||
|
|
||||||
module = MAINLINE_MODULES_BY_APEX["com.android.ipsec"]
|
module = MAINLINE_MODULES_BY_APEX["com.android.ipsec"]
|
||||||
transformations = module.transformations(mm.S)
|
transformations = module.transformations(mm.S, mm.Sdk)
|
||||||
|
|
||||||
self.apply_transformations(src, transformations, expected)
|
self.apply_transformations(src, transformations, expected)
|
||||||
|
|
||||||
@@ -440,7 +439,7 @@ class TestAndroidBpTransformations(unittest.TestCase):
|
|||||||
expected = read_test_data("ipsec_tiramisu_Android.bp.expected")
|
expected = read_test_data("ipsec_tiramisu_Android.bp.expected")
|
||||||
|
|
||||||
module = MAINLINE_MODULES_BY_APEX["com.android.ipsec"]
|
module = MAINLINE_MODULES_BY_APEX["com.android.ipsec"]
|
||||||
transformations = module.transformations(mm.Tiramisu)
|
transformations = module.transformations(mm.Tiramisu, mm.Sdk)
|
||||||
|
|
||||||
self.apply_transformations(src, transformations, expected)
|
self.apply_transformations(src, transformations, expected)
|
||||||
|
|
||||||
@@ -456,7 +455,7 @@ class TestAndroidBpTransformations(unittest.TestCase):
|
|||||||
expected = read_test_data("wifi_Android.bp.expected")
|
expected = read_test_data("wifi_Android.bp.expected")
|
||||||
|
|
||||||
module = MAINLINE_MODULES_BY_APEX["com.android.wifi"]
|
module = MAINLINE_MODULES_BY_APEX["com.android.wifi"]
|
||||||
transformations = module.transformations(mm.S)
|
transformations = module.transformations(mm.S, mm.Sdk)
|
||||||
|
|
||||||
self.apply_transformations(src, transformations, expected)
|
self.apply_transformations(src, transformations, expected)
|
||||||
|
|
||||||
@@ -471,7 +470,7 @@ class TestAndroidBpTransformations(unittest.TestCase):
|
|||||||
expected = read_test_data("wifi_tiramisu_Android.bp.expected")
|
expected = read_test_data("wifi_tiramisu_Android.bp.expected")
|
||||||
|
|
||||||
module = MAINLINE_MODULES_BY_APEX["com.android.wifi"]
|
module = MAINLINE_MODULES_BY_APEX["com.android.wifi"]
|
||||||
transformations = module.transformations(mm.Tiramisu)
|
transformations = module.transformations(mm.Tiramisu, mm.Sdk)
|
||||||
|
|
||||||
self.apply_transformations(src, transformations, expected)
|
self.apply_transformations(src, transformations, expected)
|
||||||
|
|
||||||
@@ -480,14 +479,30 @@ class TestAndroidBpTransformations(unittest.TestCase):
|
|||||||
|
|
||||||
The ART mainline module uses a different Soong config setup to the
|
The ART mainline module uses a different Soong config setup to the
|
||||||
common mainline modules. This checks that the ART specific Soong config
|
common mainline modules. This checks that the ART specific Soong config
|
||||||
module types, variable and imports are used.
|
module types, and variables are used.
|
||||||
"""
|
"""
|
||||||
src = read_test_data("art_Android.bp.input")
|
src = read_test_data("art_Android.bp.input")
|
||||||
|
|
||||||
expected = read_test_data("art_Android.bp.expected")
|
expected = read_test_data("art_Android.bp.expected")
|
||||||
|
|
||||||
module = MAINLINE_MODULES_BY_APEX["com.android.art"]
|
module = MAINLINE_MODULES_BY_APEX["com.android.art"]
|
||||||
transformations = module.transformations(mm.S)
|
transformations = module.transformations(mm.S, mm.Sdk)
|
||||||
|
|
||||||
|
self.apply_transformations(src, transformations, expected)
|
||||||
|
|
||||||
|
def test_art_module_exports(self):
|
||||||
|
"""Tests the transformations applied to a the ART mainline module.
|
||||||
|
|
||||||
|
The ART mainline module uses a different Soong config setup to the
|
||||||
|
common mainline modules. This checks that the ART specific Soong config
|
||||||
|
module types, and variables are used.
|
||||||
|
"""
|
||||||
|
src = read_test_data("art_Android.bp.input")
|
||||||
|
|
||||||
|
expected = read_test_data("art_host_exports_Android.bp.expected")
|
||||||
|
|
||||||
|
module = MAINLINE_MODULES_BY_APEX["com.android.art"]
|
||||||
|
transformations = module.transformations(mm.S, mm.HostExports)
|
||||||
|
|
||||||
self.apply_transformations(src, transformations, expected)
|
self.apply_transformations(src, transformations, expected)
|
||||||
|
|
||||||
@@ -505,7 +520,7 @@ class TestAndroidBpTransformations(unittest.TestCase):
|
|||||||
expected = src
|
expected = src
|
||||||
|
|
||||||
module = MAINLINE_MODULES_BY_APEX["com.android.ipsec"]
|
module = MAINLINE_MODULES_BY_APEX["com.android.ipsec"]
|
||||||
transformations = module.transformations(mm.R)
|
transformations = module.transformations(mm.R, mm.Sdk)
|
||||||
|
|
||||||
self.apply_transformations(src, transformations, expected)
|
self.apply_transformations(src, transformations, expected)
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,30 @@
|
|||||||
// This is auto-generated. DO NOT EDIT.
|
// This is auto-generated. DO NOT EDIT.
|
||||||
|
|
||||||
// Soong config variable stanza added by test_art.
|
// Soong config variable module type added by test_art.
|
||||||
soong_config_module_type_import {
|
soong_config_module_type {
|
||||||
from: "prebuilts/module_sdk/art/SoongConfig.bp",
|
name: "art_prebuilt_java_import",
|
||||||
module_types: [
|
module_type: "java_import",
|
||||||
"art_prebuilt_java_import",
|
config_namespace: "art_module",
|
||||||
"art_prebuilt_prebuilt_bootclasspath_fragment",
|
bool_variables: ["source_build"],
|
||||||
"art_prebuilt_prebuilt_platform_compat_config",
|
properties: ["prefer"],
|
||||||
],
|
}
|
||||||
|
|
||||||
|
// Soong config variable module type added by test_art.
|
||||||
|
soong_config_module_type {
|
||||||
|
name: "art_prebuilt_prebuilt_bootclasspath_fragment",
|
||||||
|
module_type: "prebuilt_bootclasspath_fragment",
|
||||||
|
config_namespace: "art_module",
|
||||||
|
bool_variables: ["source_build"],
|
||||||
|
properties: ["prefer"],
|
||||||
|
}
|
||||||
|
|
||||||
|
// Soong config variable module type added by test_art.
|
||||||
|
soong_config_module_type {
|
||||||
|
name: "art_prebuilt_prebuilt_platform_compat_config",
|
||||||
|
module_type: "prebuilt_platform_compat_config",
|
||||||
|
config_namespace: "art_module",
|
||||||
|
bool_variables: ["source_build"],
|
||||||
|
properties: ["prefer"],
|
||||||
}
|
}
|
||||||
|
|
||||||
package {
|
package {
|
||||||
|
|||||||
@@ -0,0 +1,124 @@
|
|||||||
|
// This is auto-generated. DO NOT EDIT.
|
||||||
|
|
||||||
|
// Soong config variable module type added by test_art_module_exports.
|
||||||
|
soong_config_module_type {
|
||||||
|
name: "art_host_exports_prebuilt_java_import",
|
||||||
|
module_type: "java_import",
|
||||||
|
config_namespace: "art_module",
|
||||||
|
bool_variables: ["source_build"],
|
||||||
|
properties: ["prefer"],
|
||||||
|
}
|
||||||
|
|
||||||
|
// Soong config variable module type added by test_art_module_exports.
|
||||||
|
soong_config_module_type {
|
||||||
|
name: "art_host_exports_prebuilt_prebuilt_bootclasspath_fragment",
|
||||||
|
module_type: "prebuilt_bootclasspath_fragment",
|
||||||
|
config_namespace: "art_module",
|
||||||
|
bool_variables: ["source_build"],
|
||||||
|
properties: ["prefer"],
|
||||||
|
}
|
||||||
|
|
||||||
|
// Soong config variable module type added by test_art_module_exports.
|
||||||
|
soong_config_module_type {
|
||||||
|
name: "art_host_exports_prebuilt_prebuilt_platform_compat_config",
|
||||||
|
module_type: "prebuilt_platform_compat_config",
|
||||||
|
config_namespace: "art_module",
|
||||||
|
bool_variables: ["source_build"],
|
||||||
|
properties: ["prefer"],
|
||||||
|
}
|
||||||
|
|
||||||
|
package {
|
||||||
|
// A default list here prevents the license LSC from adding its own list which would
|
||||||
|
// be unnecessary as every module in the sdk already has its own licenses property.
|
||||||
|
default_applicable_licenses: ["Android-Apache-2.0"],
|
||||||
|
}
|
||||||
|
|
||||||
|
art_host_exports_prebuilt_prebuilt_bootclasspath_fragment {
|
||||||
|
name: "art-bootclasspath-fragment",
|
||||||
|
// Do not prefer prebuilt if the Soong config variable "source_build" in namespace "art_module" is true.
|
||||||
|
prefer: true,
|
||||||
|
soong_config_variables: {
|
||||||
|
source_build: {
|
||||||
|
prefer: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
visibility: [
|
||||||
|
"//art/build/apex",
|
||||||
|
"//art/build/boot",
|
||||||
|
"//art/build/sdk",
|
||||||
|
"//prebuilts:__subpackages__",
|
||||||
|
],
|
||||||
|
apex_available: [
|
||||||
|
"com.android.art",
|
||||||
|
],
|
||||||
|
licenses: ["art-module-sdk_art_license"],
|
||||||
|
image_name: "art",
|
||||||
|
contents: [
|
||||||
|
"core-oj",
|
||||||
|
"core-libart",
|
||||||
|
"okhttp",
|
||||||
|
"bouncycastle",
|
||||||
|
"apache-xml",
|
||||||
|
],
|
||||||
|
api: {
|
||||||
|
stub_libs: ["art.module.public.api"],
|
||||||
|
},
|
||||||
|
core_platform_api: {
|
||||||
|
stub_libs: ["art.module.public.api.stubs.module_lib"],
|
||||||
|
},
|
||||||
|
hidden_api: {
|
||||||
|
max_target_o_low_priority: ["hiddenapi/hiddenapi-max-target-o-low-priority.txt"],
|
||||||
|
blocked: ["hiddenapi/hiddenapi-blocked.txt"],
|
||||||
|
unsupported_packages: ["hiddenapi/hiddenapi-unsupported-packages.txt"],
|
||||||
|
stub_flags: "hiddenapi/stub-flags.csv",
|
||||||
|
annotation_flags: "hiddenapi/annotation-flags.csv",
|
||||||
|
metadata: "hiddenapi/metadata.csv",
|
||||||
|
index: "hiddenapi/index.csv",
|
||||||
|
all_flags: "hiddenapi/all-flags.csv",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
art_host_exports_prebuilt_prebuilt_platform_compat_config {
|
||||||
|
name: "libcore-platform-compat-config",
|
||||||
|
// Do not prefer prebuilt if the Soong config variable "source_build" in namespace "art_module" is true.
|
||||||
|
prefer: true,
|
||||||
|
soong_config_variables: {
|
||||||
|
source_build: {
|
||||||
|
prefer: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
visibility: [
|
||||||
|
"//art/build/apex",
|
||||||
|
"//art/build/sdk",
|
||||||
|
"//libcore",
|
||||||
|
"//prebuilts:__subpackages__",
|
||||||
|
],
|
||||||
|
licenses: ["art-module-sdk_libcore_license"],
|
||||||
|
metadata: "compat_configs/libcore-platform-compat-config/libcore-platform-compat-config_meta.xml",
|
||||||
|
}
|
||||||
|
|
||||||
|
art_host_exports_prebuilt_java_import {
|
||||||
|
name: "core-oj",
|
||||||
|
// Do not prefer prebuilt if the Soong config variable "source_build" in namespace "art_module" is true.
|
||||||
|
prefer: true,
|
||||||
|
soong_config_variables: {
|
||||||
|
source_build: {
|
||||||
|
prefer: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
visibility: [
|
||||||
|
"//art/build/apex",
|
||||||
|
"//art/build/sdk",
|
||||||
|
"//external/wycheproof",
|
||||||
|
"//libcore",
|
||||||
|
"//libcore/benchmarks",
|
||||||
|
"//packages/modules/ArtPrebuilt",
|
||||||
|
"//prebuilts:__subpackages__",
|
||||||
|
],
|
||||||
|
apex_available: [
|
||||||
|
"com.android.art",
|
||||||
|
"com.android.art.debug",
|
||||||
|
],
|
||||||
|
licenses: ["art-module-sdk_libcore_license"],
|
||||||
|
jars: ["java/core-oj.jar"],
|
||||||
|
}
|
||||||
@@ -1,12 +1,21 @@
|
|||||||
// This is auto-generated. DO NOT EDIT.
|
// This is auto-generated. DO NOT EDIT.
|
||||||
|
|
||||||
// Soong config variable stanza added by test_common_mainline_module.
|
// Soong config variable module type added by test_common_mainline_module.
|
||||||
soong_config_module_type_import {
|
soong_config_module_type {
|
||||||
from: "packages/modules/common/Android.bp",
|
name: "ipsec_prebuilt_java_sdk_library_import",
|
||||||
module_types: [
|
module_type: "java_sdk_library_import",
|
||||||
"module_java_sdk_library_import",
|
config_namespace: "ANDROID",
|
||||||
"module_prebuilt_bootclasspath_fragment",
|
bool_variables: ["module_build_from_source"],
|
||||||
],
|
properties: ["prefer"],
|
||||||
|
}
|
||||||
|
|
||||||
|
// Soong config variable module type added by test_common_mainline_module.
|
||||||
|
soong_config_module_type {
|
||||||
|
name: "ipsec_prebuilt_prebuilt_bootclasspath_fragment",
|
||||||
|
module_type: "prebuilt_bootclasspath_fragment",
|
||||||
|
config_namespace: "ANDROID",
|
||||||
|
bool_variables: ["module_build_from_source"],
|
||||||
|
properties: ["prefer"],
|
||||||
}
|
}
|
||||||
|
|
||||||
package {
|
package {
|
||||||
@@ -15,7 +24,7 @@ package {
|
|||||||
default_applicable_licenses: ["Android-Apache-2.0"],
|
default_applicable_licenses: ["Android-Apache-2.0"],
|
||||||
}
|
}
|
||||||
|
|
||||||
module_prebuilt_bootclasspath_fragment {
|
ipsec_prebuilt_prebuilt_bootclasspath_fragment {
|
||||||
name: "com.android.ipsec-bootclasspath-fragment",
|
name: "com.android.ipsec-bootclasspath-fragment",
|
||||||
// Do not prefer prebuilt if the Soong config variable "module_build_from_source" in namespace "ANDROID" is true.
|
// Do not prefer prebuilt if the Soong config variable "module_build_from_source" in namespace "ANDROID" is true.
|
||||||
prefer: true,
|
prefer: true,
|
||||||
@@ -37,7 +46,7 @@ module_prebuilt_bootclasspath_fragment {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
module_java_sdk_library_import {
|
ipsec_prebuilt_java_sdk_library_import {
|
||||||
name: "android.net.ipsec.ike",
|
name: "android.net.ipsec.ike",
|
||||||
// Do not prefer prebuilt if the Soong config variable "module_build_from_source" in namespace "ANDROID" is true.
|
// Do not prefer prebuilt if the Soong config variable "module_build_from_source" in namespace "ANDROID" is true.
|
||||||
prefer: true,
|
prefer: true,
|
||||||
|
|||||||
Reference in New Issue
Block a user