Whamcloud - gitweb
filefrag: add -E option to display the extent status cache
[tools/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 cc_library {
6     name: "libext2_misc",
7     host_supported: true,
8     recovery_available: true,
9     defaults: ["e2fsprogs-defaults"],
10
11     target: {
12         windows: {
13             include_dirs: [ "external/e2fsprogs/include/mingw" ],
14             enabled: true,
15             cflags: ["-Wno-unused-variable"],
16         },
17     },
18
19     srcs: [
20         "create_inode.c",
21     ],
22     cflags: ["-Wno-error=format-extra-args"],
23     shared_libs: [
24         "libext2fs",
25         "libext2_com_err",
26         "libext2_quota",
27     ],
28     system_shared_libs: ["libc", "libdl"],
29     export_include_dirs: ["."],
30 }
31
32 //########################################################################
33 // Build mke2fs
34
35 cc_binary {
36     name: "mke2fs",
37     host_supported: true,
38     recovery_available: true,
39     defaults: ["e2fsprogs-defaults"],
40
41     srcs: [
42         "mke2fs.c",
43         "util.c",
44         "mk_hugefiles.c",
45         "default_profile.c",
46     ],
47     cflags: [
48         "-Wno-error=format",
49         "-Wno-error=type-limits",
50         "-Wno-format-extra-args",
51     ],
52     target: {
53         host: {
54             static_libs: [
55                 "libext2_blkid",
56                 "libext2_misc",
57                 "libext2_uuid",
58                 "libext2_quota",
59                 "libext2_com_err",
60                 "libext2_e2p",
61                 "libext2fs",
62                 "libsparse",
63                 "libbase",
64                 "libz",
65             ],
66         },
67         not_windows: {
68             required: [
69                 "mke2fs.conf",
70             ],
71         },
72         windows: {
73             include_dirs: [ "external/e2fsprogs/include/mingw" ],
74             cflags: [
75                 "-D_POSIX",
76                 "-D__USE_MINGW_ALARM",
77                 // mke2fs.c has a warning from gcc which cannot be suppressed:
78                 // passing argument 3 of 'ext2fs_get_device_size' from
79                 // incompatible pointer type
80                 "-Wno-error"
81             ],
82             ldflags: ["-static"],
83             host_ldlibs: ["-lws2_32"],
84             enabled: true
85         },
86         android: {
87             required: [
88                 "mke2fs.conf",
89             ],
90             shared_libs: [
91                 "libext2fs",
92                 "libext2_blkid",
93                 "libext2_misc",
94                 "libext2_uuid",
95                 "libext2_quota",
96                 "libext2_com_err",
97                 "libext2_e2p",
98             ],
99             symlinks: ["mkfs.ext2", "mkfs.ext3", "mkfs.ext4"],
100         },
101     },
102     stl: "libc++_static",
103     include_dirs: ["external/e2fsprogs/e2fsck"],
104 }
105
106 //##########################################################################
107 // Build tune2fs
108
109 cc_defaults {
110     name: "tune2fs-defaults",
111     defaults: ["e2fsprogs-defaults"],
112     srcs: [
113         "tune2fs.c",
114         "util.c",
115     ],
116     cflags: ["-DNO_RECOVERY"],
117     include_dirs: ["external/e2fsprogs/e2fsck"],
118 }
119
120 tune2fs_libs = [
121     "libext2_blkid",
122     "libext2_com_err",
123     "libext2_quota",
124     "libext2_uuid",
125     "libext2_e2p",
126     "libext2fs",
127 ]
128
129 cc_binary {
130     name: "tune2fs",
131     host_supported: true,
132     defaults: ["tune2fs-defaults"],
133
134     shared_libs: tune2fs_libs,
135     system_shared_libs: ["libc", "libdl"],
136 }
137
138 cc_binary {
139     name: "tune2fs_static",
140     static_executable: true,
141     defaults: ["tune2fs-defaults"],
142
143     static_libs: tune2fs_libs,
144 }
145
146 cc_library_static {
147     name: "libtune2fs",
148     defaults: ["tune2fs-defaults"],
149
150     cflags: ["-DBUILD_AS_LIB"],
151     static_libs: tune2fs_libs,
152 }
153
154 //########################################################################
155 // Build badblocks
156
157 cc_binary {
158     name: "badblocks",
159     host_supported: true,
160     defaults: ["e2fsprogs-defaults"],
161
162     srcs: ["badblocks.c"],
163     shared_libs: [
164         "libext2fs",
165         "libext2_com_err",
166         "libext2_uuid",
167         "libext2_blkid",
168         "libext2_e2p",
169     ],
170     system_shared_libs: ["libc", "libdl"],
171 }
172
173 //########################################################################
174 // Build chattr
175
176 cc_binary {
177     name: "chattr",
178     host_supported: true,
179     defaults: ["e2fsprogs-defaults"],
180
181     srcs: ["chattr.c"],
182     shared_libs: [
183         "libext2_com_err",
184         "libext2_e2p",
185     ],
186     system_shared_libs: ["libc", "libdl"],
187 }
188
189 //########################################################################
190 // Build lsattr
191
192 cc_defaults {
193     name: "lsattr-defaults",
194     srcs: ["lsattr.c"],
195     defaults: ["e2fsprogs-defaults"],
196 }
197
198 lsattr_libs = [
199     "libext2_com_err",
200     "libext2_e2p",
201 ]
202
203 cc_binary {
204     name: "lsattr",
205     host_supported: true,
206     defaults: ["lsattr-defaults"],
207
208     shared_libs: lsattr_libs,
209     system_shared_libs: ["libc", "libdl"],
210 }
211
212 cc_binary {
213     name: "lsattr_static",
214     static_executable: true,
215     defaults: ["lsattr-defaults"],
216
217     static_libs: lsattr_libs,
218 }
219
220 //########################################################################
221 // Build blkid
222
223 cc_binary {
224     name: "blkid",
225     defaults: ["e2fsprogs-defaults"],
226
227     srcs: ["blkid.c"],
228     shared_libs: [
229         "libext2fs",
230         "libext2_blkid",
231         "libext2_com_err",
232         "libext2_e2p",
233     ],
234     system_shared_libs: ["libc", "libdl"],
235 }
236
237 //########################################################################
238 // Build e4crypt
239
240 cc_binary {
241     name: "e4crypt",
242     host_supported: true,
243     defaults: ["e2fsprogs-defaults"],
244
245     srcs: ["e4crypt.c"],
246     shared_libs: [
247         "libext2fs",
248         "libext2_uuid",
249     ],
250     system_shared_libs: ["libc", "libdl"],
251
252     target: {
253         darwin: {
254             enabled: false,
255         },
256     },
257 }
258
259 //##########################################################################
260 // Build e2image
261
262 cc_binary {
263     name: "e2image",
264     host_supported: true,
265     defaults: ["e2fsprogs-defaults"],
266
267     srcs: ["e2image.c"],
268     shared_libs: [
269         "libext2fs",
270         "libext2_blkid",
271         "libext2_com_err",
272         "libext2_quota",
273     ],
274     system_shared_libs: ["libc", "libdl"],
275 }
276
277 //##########################################################################
278 // Build filefrag
279
280 cc_binary {
281     name: "filefrag",
282     host_supported: true,
283     defaults: ["e2fsprogs-defaults"],
284
285     srcs: ["filefrag.c"],
286     shared_libs: [
287         "libext2fs",
288     ],
289     system_shared_libs: ["libc", "libdl"],
290 }