xref: /aosp_15_r20/external/executorch/third-party/prebuilt_python_defs.bzl (revision 523fa7a60841cd1ecfb9cc4201f1ca8b03ed023a)
1*523fa7a6SAndroid Build Coastguard Workerload("@prelude//rules.bzl", "prebuilt_python_library", "remote_file")
2*523fa7a6SAndroid Build Coastguard Worker
3*523fa7a6SAndroid Build Coastguard Workerdef define_prebuilt_python_library(name, url, sha1, out, additional_deps = []):
4*523fa7a6SAndroid Build Coastguard Worker    remote_file(
5*523fa7a6SAndroid Build Coastguard Worker        name = "{}-download".format(name),
6*523fa7a6SAndroid Build Coastguard Worker        url = url,
7*523fa7a6SAndroid Build Coastguard Worker        sha1 = sha1,
8*523fa7a6SAndroid Build Coastguard Worker        out = out,
9*523fa7a6SAndroid Build Coastguard Worker    )
10*523fa7a6SAndroid Build Coastguard Worker
11*523fa7a6SAndroid Build Coastguard Worker    prebuilt_python_library(
12*523fa7a6SAndroid Build Coastguard Worker        name = name,
13*523fa7a6SAndroid Build Coastguard Worker        binary_src = ":{}-download".format(name),
14*523fa7a6SAndroid Build Coastguard Worker        visibility = ["PUBLIC"],
15*523fa7a6SAndroid Build Coastguard Worker        deps = [":{}-download".format(name)] + additional_deps,
16*523fa7a6SAndroid Build Coastguard Worker    )
17*523fa7a6SAndroid Build Coastguard Worker
18*523fa7a6SAndroid Build Coastguard Workerdef add_prebuilt_python_library_targets(targets):
19*523fa7a6SAndroid Build Coastguard Worker    for name, config in targets.items():
20*523fa7a6SAndroid Build Coastguard Worker        define_prebuilt_python_library(name, **config)
21