Alex Brachet has uploaded this change for review.
[sdk] Include .ifs files in SDK
This can be used for testing architectures not currently
supported by the SDK.
In the future, we'll add a script to the SDK to easily
generate link stubs from all .ifs files in the SDK.
Bug: 92682
Change-Id: Idd74816f1d40a46194d44006b3b4dd9617fb7d65
---
M build/cpp/gen_sdk_prebuilt_meta_file.py
M build/cpp/sdk_shared_library.gni
M build/sdk/meta/cc_prebuilt_library.json
M build/sdk/meta/golden/cc_prebuilt_library.json.golden
4 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/build/cpp/gen_sdk_prebuilt_meta_file.py b/build/cpp/gen_sdk_prebuilt_meta_file.py
index c93f402..0f1f2d6 100755
--- a/build/cpp/gen_sdk_prebuilt_meta_file.py
+++ b/build/cpp/gen_sdk_prebuilt_meta_file.py
@@ -55,6 +55,10 @@
help=
'Path to the file where to write the file mapping for the debug library',
required=False)
+ parser.add_argument(
+ '--ifs',
+ help='Path to .ifs file',
+ required=False)
args = parser.parse_args()
metadata = {
@@ -71,6 +75,9 @@
},
}
+ if args.ifs:
+ metadata['ifs'] = args.ifs
+
if args.lib_debug_file:
# The path of the debug file in the SDK depends on its build id.
debug_path = binaries.get_sdk_debug_path(args.lib_debug_file)
diff --git a/build/cpp/sdk_shared_library.gni b/build/cpp/sdk_shared_library.gni
index bc9dbce..4f96075 100644
--- a/build/cpp/sdk_shared_library.gni
+++ b/build/cpp/sdk_shared_library.gni
@@ -372,6 +372,13 @@
},
]
+ if (defined(invoker.symbols_api)) {
+ sdk_files += [{
+ source = get_path_info(invoker.symbols_api, "abspath")
+ dest = "${sdk_root_path}/" + get_path_info(invoker.symbols_api, "file")
+ }]
+ }
+
if (generate_plasa_artifacts) {
_plasa_artifacts_target_name = "${main_target_name}_plasa"
plasa_fragment_cc(_plasa_artifacts_target_name) {
@@ -437,6 +444,9 @@
]
args += [ "--deps" ] + rebase_path(sdk_metas, root_build_dir)
args += [ "--headers" ] + sdk_metadata_headers
+ if (defined(invoker.symbols_api)) {
+ args += [ "--ifs" ] + [ get_path_info(invoker.symbols_api, "file") ]
+ }
deps = sdk_deps + [ shared_lib_target ]
}
diff --git a/build/sdk/meta/cc_prebuilt_library.json b/build/sdk/meta/cc_prebuilt_library.json
index 32d6e7f..cf4b9ba 100644
--- a/build/sdk/meta/cc_prebuilt_library.json
+++ b/build/sdk/meta/cc_prebuilt_library.json
@@ -46,6 +46,10 @@
},
"type": "array"
},
+ "ifs": {
+ "description": "llvm-ifs file used to describe the abi of the lirbary",
+ "type": "string"
+ },
"include_dir": {
"$ref": "common.json#/definitions/file",
"description": "Path to the base directory for includes"
diff --git a/build/sdk/meta/golden/cc_prebuilt_library.json.golden b/build/sdk/meta/golden/cc_prebuilt_library.json.golden
index 32d6e7f..cf4b9ba 100644
--- a/build/sdk/meta/golden/cc_prebuilt_library.json.golden
+++ b/build/sdk/meta/golden/cc_prebuilt_library.json.golden
@@ -46,6 +46,10 @@
},
"type": "array"
},
+ "ifs": {
+ "description": "llvm-ifs file used to describe the abi of the lirbary",
+ "type": "string"
+ },
"include_dir": {
"$ref": "common.json#/definitions/file",
"description": "Path to the base directory for includes"
To view, visit change 794363. To unsubscribe, or for help writing mail filters, visit settings.