1// Copyright 2012 The Android Open Source Project
2
3package {
4    default_applicable_licenses: ["Android-Apache-2.0"],
5}
6
7cc_library_headers {
8    name: "libmkbootimg_abi_headers",
9    vendor_available: true,
10    export_include_dirs: ["include"],
11}
12
13cc_library_headers {
14    name: "bootimg_headers",
15    vendor_available: true,
16    recovery_available: true,
17    export_include_dirs: ["include/bootimg"],
18    host_supported: true,
19    target: {
20        windows: {
21            enabled: true,
22        },
23    },
24    apex_available: [
25        "//apex_available:platform",
26        "com.android.virt",
27    ],
28}
29
30cc_library {
31    name: "libmkbootimg_abi_check",
32    vendor_available: true,
33    vndk: {
34        enabled: true,
35    },
36    srcs: [
37        "mkbootimg_dummy.cpp",
38    ],
39    header_libs: ["libmkbootimg_abi_headers"],
40    export_header_lib_headers: ["libmkbootimg_abi_headers"],
41}
42
43python_defaults {
44    name: "mkbootimg_defaults",
45    version: {
46        py2: {
47            enabled: false,
48        },
49        py3: {
50            enabled: true,
51            embedded_launcher: true,
52        },
53    },
54}
55
56python_binary_host {
57    name: "mkbootimg",
58    defaults: ["mkbootimg_defaults"],
59    srcs: [
60        "mkbootimg.py",
61    ],
62    required: [
63        "avbtool",
64    ],
65}
66
67python_binary_host {
68    name: "unpack_bootimg",
69    defaults: ["mkbootimg_defaults"],
70    srcs: [
71        "unpack_bootimg.py",
72    ],
73}
74
75
76python_binary_host {
77    name: "repack_bootimg",
78    defaults: ["mkbootimg_defaults"],
79    srcs: [
80        "repack_bootimg.py",
81    ],
82    required: [
83        "lz4",
84        "minigzip",
85        "mkbootfs",
86        "mkbootimg",
87        "toybox",
88        "unpack_bootimg",
89    ],
90}
91
92python_test_host {
93    name: "mkbootimg_test",
94    defaults: ["mkbootimg_defaults"],
95    main: "tests/mkbootimg_test.py",
96    srcs: [
97        "tests/mkbootimg_test.py",
98    ],
99    data: [
100        ":avbtool",
101        ":mkbootimg",
102        ":unpack_bootimg",
103        "tests/data/*",
104    ],
105    test_options: {
106        unit_test: true,
107    },
108}
109