]> git.ipfire.org Git - thirdparty/e2fsprogs.git/blob - misc/Android.bp
4edac23e23c661af330511308cde5682c76079ff
[thirdparty/e2fsprogs.git] / misc / Android.bp
1 // Copyright 2017 The Android Open Source Project
2
3 // Library used to export files from this directory to other programs in this
4 // project.
5 package {
6 // See: http://go/android-license-faq
7 // A large-scale-change added 'default_applicable_licenses' to import
8 // all of the 'license_kinds' from "external_e2fsprogs_license"
9 // to get the below license kinds:
10 // SPDX-license-identifier-GPL
11 // SPDX-license-identifier-LGPL
12 // SPDX-license-identifier-LGPL-2.1
13 // SPDX-license-identifier-LGPL-3.0
14 default_applicable_licenses: ["external_e2fsprogs_license"],
15 }
16
17 cc_library {
18 name: "libext2_misc",
19 host_supported: true,
20 recovery_available: true,
21 vendor_available: true,
22 defaults: ["e2fsprogs-defaults"],
23
24 target: {
25 windows: {
26 enabled: true,
27 },
28 },
29
30 srcs: [
31 "create_inode.c",
32 ],
33 shared_libs: [
34 "libext2fs",
35 "libext2_com_err",
36 "libext2_quota",
37 ],
38 export_include_dirs: ["."],
39 }
40
41 //########################################################################
42 // Build mke2fs
43
44 cc_defaults {
45 name: "mke2fs_defaults",
46 recovery_available: true,
47 defaults: ["e2fsprogs-defaults"],
48
49 srcs: [
50 "mke2fs.c",
51 "util.c",
52 "mk_hugefiles.c",
53 "default_profile.c",
54 ],
55 stl: "libc++_static",
56 include_dirs: ["external/e2fsprogs/e2fsck"],
57 }
58
59 cc_binary {
60 name: "mke2fs",
61 host_supported: true,
62 vendor_available: true,
63 defaults: ["mke2fs_defaults"],
64 target: {
65 host: {
66 static_libs: [
67 "libext2_blkid",
68 "libext2_misc",
69 "libext2_uuid",
70 "libext2_quota",
71 "libext2_com_err",
72 "libext2_e2p",
73 "libext2fs",
74 "libsparse",
75 "libbase",
76 "libz",
77 ],
78 },
79 not_windows: {
80 required: [
81 "mke2fs.conf",
82 ],
83 },
84 windows: {
85 ldflags: ["-static"],
86 enabled: true,
87 },
88 android: {
89 required: [
90 "mke2fs.conf",
91 ],
92 shared_libs: [
93 "libext2fs",
94 "libext2_blkid",
95 "libext2_misc",
96 "libext2_uuid",
97 "libext2_quota",
98 "libext2_com_err",
99 "libext2_e2p",
100 ],
101 symlinks: [
102 "mkfs.ext2",
103 "mkfs.ext3",
104 "mkfs.ext4",
105 ],
106 },
107 },
108 }
109
110 cc_binary {
111 name: "mke2fs.microdroid",
112 defaults: ["mke2fs_defaults"],
113 bootstrap: true,
114 target: {
115 android: {
116 required: [
117 "mke2fs.conf",
118 ],
119 shared_libs: [
120 "libext2fs",
121 "libext2_blkid",
122 "libext2_misc",
123 "libext2_uuid",
124 "libext2_quota",
125 "libext2_com_err",
126 "libext2_e2p",
127 ],
128 symlinks: ["mkfs.ext4.microdroid"],
129 },
130 },
131 no_full_install: true,
132 stem: "mke2fs",
133 visibility: ["//packages/modules/Virtualization/microdroid"],
134 }
135
136 //##########################################################################
137 // Build tune2fs
138
139 cc_defaults {
140 name: "tune2fs-defaults",
141 defaults: ["e2fsprogs-defaults"],
142 srcs: [
143 "tune2fs.c",
144 "util.c",
145 ],
146 cflags: ["-DNO_RECOVERY"],
147 include_dirs: ["external/e2fsprogs/e2fsck"],
148 }
149
150 tune2fs_libs = [
151 "libext2_blkid",
152 "libext2_com_err",
153 "libext2_quota",
154 "libext2_uuid",
155 "libext2_e2p",
156 "libext2fs",
157 ]
158
159 cc_binary {
160 name: "tune2fs",
161 host_supported: true,
162 vendor_ramdisk_available: true,
163 defaults: ["tune2fs-defaults"],
164
165 shared_libs: tune2fs_libs,
166 }
167
168 cc_binary {
169 name: "tune2fs_static",
170 static_executable: true,
171 defaults: ["tune2fs-defaults"],
172
173 static_libs: tune2fs_libs,
174 }
175
176 cc_binary {
177 name: "tune2fs_ramdisk",
178 stem: "tune2fs",
179 static_executable: true,
180 ramdisk: true,
181 defaults: ["tune2fs-defaults"],
182 static_libs: tune2fs_libs,
183 }
184
185 cc_library_static {
186 name: "libtune2fs",
187 defaults: ["tune2fs-defaults"],
188
189 cflags: ["-DBUILD_AS_LIB"],
190 static_libs: tune2fs_libs,
191 }
192
193 //########################################################################
194 // Build badblocks
195
196 cc_binary_host {
197 name: "badblocks",
198 defaults: ["e2fsprogs-defaults"],
199
200 srcs: ["badblocks.c"],
201 shared_libs: [
202 "libext2fs",
203 "libext2_com_err",
204 "libext2_uuid",
205 "libext2_blkid",
206 "libext2_e2p",
207 ],
208 }
209
210 //########################################################################
211 // Build chattr
212
213 cc_binary {
214 name: "chattr-e2fsprogs",
215 host_supported: true,
216 defaults: ["e2fsprogs-defaults"],
217
218 srcs: ["chattr.c"],
219 shared_libs: [
220 "libext2_com_err",
221 "libext2_e2p",
222 ],
223 }
224
225 //########################################################################
226 // Build lsattr
227
228 cc_defaults {
229 name: "lsattr-defaults",
230 srcs: ["lsattr.c"],
231 defaults: ["e2fsprogs-defaults"],
232 }
233
234 lsattr_libs = [
235 "libext2_com_err",
236 "libext2_e2p",
237 ]
238
239 cc_binary {
240 name: "lsattr-e2fsprogs",
241 host_supported: true,
242 defaults: ["lsattr-defaults"],
243
244 shared_libs: lsattr_libs,
245 }
246
247 cc_binary {
248 name: "lsattr_static",
249 static_executable: true,
250 defaults: ["lsattr-defaults"],
251
252 static_libs: lsattr_libs,
253 }
254
255 //########################################################################
256 // Build blkid
257
258 cc_binary {
259 name: "blkid",
260 host_supported: true,
261 defaults: ["e2fsprogs-defaults"],
262
263 srcs: ["blkid.c"],
264 shared_libs: [
265 "libext2fs",
266 "libext2_blkid",
267 "libext2_com_err",
268 "libext2_e2p",
269 ],
270 }
271
272 cc_binary {
273 name: "blkid_static",
274 host_supported: true,
275 static_executable: true,
276 defaults: ["e2fsprogs-defaults"],
277
278 srcs: ["blkid.c"],
279 static_libs: [
280 "libext2fs",
281 "libext2_blkid",
282 "libext2_com_err",
283 "libext2_e2p",
284 "libext2_uuid",
285 ],
286 }
287
288 //########################################################################
289 // Build e4crypt
290
291 cc_binary {
292 name: "e4crypt",
293 host_supported: true,
294 defaults: ["e2fsprogs-defaults"],
295
296 srcs: ["e4crypt.c"],
297 shared_libs: [
298 "libext2fs",
299 "libext2_uuid",
300 ],
301
302 target: {
303 darwin: {
304 enabled: false,
305 },
306 },
307 }
308
309 //##########################################################################
310 // Build e2image
311
312 cc_binary {
313 name: "e2image",
314 host_supported: true,
315 defaults: ["e2fsprogs-defaults"],
316
317 srcs: ["e2image.c"],
318 shared_libs: [
319 "libext2fs",
320 "libext2_blkid",
321 "libext2_com_err",
322 "libext2_quota",
323 ],
324 }
325
326 //##########################################################################
327 // Build filefrag
328
329 cc_binary {
330 name: "filefrag",
331 host_supported: true,
332 defaults: ["e2fsprogs-defaults"],
333
334 srcs: ["filefrag.c"],
335 shared_libs: [
336 "libext2fs",
337 ],
338 }
339
340 //##########################################################################
341 // Build e2freefrag
342
343 cc_binary {
344 name: "e2freefrag",
345 host_supported: true,
346 defaults: ["e2fsprogs-defaults"],
347
348 srcs: [
349 "e2freefrag.c",
350 ],
351 header_libs: ["libext2-headers"],
352 shared_libs: [
353 "libext2fs",
354 "libext2_com_err",
355 ],
356 }