Whamcloud - gitweb
misc: handle very large files with filefrag
[tools/e2fsprogs.git] / misc / Android.bp
index f75c9d1..dea2f9f 100644 (file)
@@ -5,16 +5,27 @@
 cc_library {
     name: "libext2_misc",
     host_supported: true,
+    recovery_available: true,
+    defaults: ["e2fsprogs-defaults"],
+
+    target: {
+        windows: {
+            include_dirs: [ "external/e2fsprogs/include/mingw" ],
+            enabled: true,
+            cflags: ["-Wno-unused-variable"],
+        },
+    },
 
     srcs: [
         "create_inode.c",
     ],
-    cflags: ["-W", "-Wall"],
+    cflags: ["-Wno-error=format-extra-args"],
     shared_libs: [
-        "libext2_quota",
         "libext2fs",
+        "libext2_com_err",
+        "libext2_quota",
     ],
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
     export_include_dirs: ["."],
 }
 
@@ -24,24 +35,71 @@ cc_library {
 cc_binary {
     name: "mke2fs",
     host_supported: true,
+    recovery_available: true,
+    defaults: ["e2fsprogs-defaults"],
 
     srcs: [
         "mke2fs.c",
         "util.c",
         "mk_hugefiles.c",
         "default_profile.c",
-        "create_inode.c",
     ],
-    cflags: ["-W", "-Wall"],
-    shared_libs: [
-        "libext2fs",
-        "libext2_blkid",
-        "libext2_uuid",
-        "libext2_quota",
-        "libext2_com_err",
-        "libext2_e2p",
+    cflags: [
+        "-Wno-error=format",
+        "-Wno-error=type-limits",
+        "-Wno-format-extra-args",
     ],
-    system_shared_libs: ["libc"],
+    target: {
+        host: {
+            static_libs: [
+                "libext2_blkid",
+                "libext2_misc",
+                "libext2_uuid",
+                "libext2_quota",
+                "libext2_com_err",
+                "libext2_e2p",
+                "libext2fs",
+                "libsparse",
+                "libbase",
+                "libz",
+            ],
+        },
+        not_windows: {
+            required: [
+                "mke2fs.conf",
+            ],
+        },
+        windows: {
+            include_dirs: [ "external/e2fsprogs/include/mingw" ],
+            cflags: [
+                "-D_POSIX",
+                "-D__USE_MINGW_ALARM",
+                // mke2fs.c has a warning from gcc which cannot be suppressed:
+                // passing argument 3 of 'ext2fs_get_device_size' from
+                // incompatible pointer type
+                "-Wno-error"
+            ],
+            ldflags: ["-static"],
+            host_ldlibs: ["-lws2_32"],
+            enabled: true
+        },
+        android: {
+            required: [
+                "mke2fs.conf",
+            ],
+            shared_libs: [
+                "libext2fs",
+                "libext2_blkid",
+                "libext2_misc",
+                "libext2_uuid",
+                "libext2_quota",
+                "libext2_com_err",
+                "libext2_e2p",
+            ],
+            symlinks: ["mkfs.ext2", "mkfs.ext3", "mkfs.ext4"],
+        },
+    },
+    stl: "libc++_static",
     include_dirs: ["external/e2fsprogs/e2fsck"],
 }
 
@@ -50,21 +108,18 @@ cc_binary {
 
 cc_defaults {
     name: "tune2fs-defaults",
+    defaults: ["e2fsprogs-defaults"],
     srcs: [
         "tune2fs.c",
         "util.c",
     ],
-    cflags: [
-        "-W",
-        "-Wall",
-        "-DNO_RECOVERY",
-    ],
+    cflags: ["-DNO_RECOVERY"],
     include_dirs: ["external/e2fsprogs/e2fsck"],
 }
 
 tune2fs_libs = [
-    "libext2_com_err",
     "libext2_blkid",
+    "libext2_com_err",
     "libext2_quota",
     "libext2_uuid",
     "libext2_e2p",
@@ -77,7 +132,7 @@ cc_binary {
     defaults: ["tune2fs-defaults"],
 
     shared_libs: tune2fs_libs,
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
 }
 
 cc_binary {
@@ -85,7 +140,7 @@ cc_binary {
     static_executable: true,
     defaults: ["tune2fs-defaults"],
 
-    static_libs: tune2fs_libs + ["libc"],
+    static_libs: tune2fs_libs,
 }
 
 cc_library_static {
@@ -102,9 +157,9 @@ cc_library_static {
 cc_binary {
     name: "badblocks",
     host_supported: true,
+    defaults: ["e2fsprogs-defaults"],
 
     srcs: ["badblocks.c"],
-    cflags: ["-W", "-Wall"],
     shared_libs: [
         "libext2fs",
         "libext2_com_err",
@@ -112,7 +167,7 @@ cc_binary {
         "libext2_blkid",
         "libext2_e2p",
     ],
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
 }
 
 //########################################################################
@@ -121,14 +176,14 @@ cc_binary {
 cc_binary {
     name: "chattr",
     host_supported: true,
+    defaults: ["e2fsprogs-defaults"],
 
     srcs: ["chattr.c"],
-    cflags: ["-W", "-Wall"],
     shared_libs: [
         "libext2_com_err",
         "libext2_e2p",
     ],
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
 }
 
 //########################################################################
@@ -137,7 +192,7 @@ cc_binary {
 cc_defaults {
     name: "lsattr-defaults",
     srcs: ["lsattr.c"],
-    cflags: ["-W", "-Wall"],
+    defaults: ["e2fsprogs-defaults"],
 }
 
 lsattr_libs = [
@@ -151,7 +206,7 @@ cc_binary {
     defaults: ["lsattr-defaults"],
 
     shared_libs: lsattr_libs,
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
 }
 
 cc_binary {
@@ -159,7 +214,7 @@ cc_binary {
     static_executable: true,
     defaults: ["lsattr-defaults"],
 
-    static_libs: lsattr_libs + ["libc"],
+    static_libs: lsattr_libs,
 }
 
 //########################################################################
@@ -167,16 +222,16 @@ cc_binary {
 
 cc_binary {
     name: "blkid",
+    defaults: ["e2fsprogs-defaults"],
 
     srcs: ["blkid.c"],
-    cflags: ["-W", "-Wall"],
     shared_libs: [
         "libext2fs",
         "libext2_blkid",
         "libext2_com_err",
         "libext2_e2p",
     ],
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
 }
 
 //########################################################################
@@ -185,14 +240,14 @@ cc_binary {
 cc_binary {
     name: "e4crypt",
     host_supported: true,
+    defaults: ["e2fsprogs-defaults"],
 
     srcs: ["e4crypt.c"],
-    cflags: ["-W", "-Wall"],
     shared_libs: [
         "libext2fs",
         "libext2_uuid",
     ],
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
 
     target: {
         darwin: {
@@ -207,14 +262,29 @@ cc_binary {
 cc_binary {
     name: "e2image",
     host_supported: true,
+    defaults: ["e2fsprogs-defaults"],
 
     srcs: ["e2image.c"],
-    cflags: ["-W", "-Wall"],
     shared_libs: [
         "libext2fs",
         "libext2_blkid",
         "libext2_com_err",
         "libext2_quota",
     ],
-    system_shared_libs: ["libc"],
+    system_shared_libs: ["libc", "libdl"],
+}
+
+//##########################################################################
+// Build filefrag
+
+cc_binary {
+    name: "filefrag",
+    host_supported: true,
+    defaults: ["e2fsprogs-defaults"],
+
+    srcs: ["filefrag.c"],
+    shared_libs: [
+        "libext2fs",
+    ],
+    system_shared_libs: ["libc", "libdl"],
 }