aboutsummaryrefslogtreecommitdiff
path: root/Android.bp
blob: d9d72b4f57bd9e88b68d72103f98ff0c3ec4b61d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
// Copyright 2017 The Android Open Source Project

cc_defaults {
    name: "f2fs-tools-defaults",
    cflags: [
        "-DF2FS_MAJOR_VERSION=1",
        "-DF2FS_MINOR_VERSION=10",
        "-DF2FS_TOOLS_VERSION=\"1.10.0\"",
        "-DF2FS_TOOLS_DATE=\"2018-01-30\"",
        "-DWITH_ANDROID",
        "-Wall",
        "-Werror",
        "-Wno-format",
        "-Wno-macro-redefined",
        "-Wno-missing-field-initializers",
        "-Wno-pointer-arith",
        "-Wno-sign-compare",
        "-Wno-unused-function",
    ],
    local_include_dirs: [
        "include",
        "mkfs",
        "fsck",
    ],
    include_dirs: [
        "external/e2fsprogs/lib/",
        "system/core/libsparse/include",
    ],
    target: {
        windows: {
            enabled: false,
        },
    },
}

cc_defaults {
    name: "libf2fs_src_files",
    srcs: [
        "lib/libf2fs.c",
        "mkfs/f2fs_format.c",
        "mkfs/f2fs_format_utils.c",
    ],
}

cc_defaults {
    name: "make_f2fs_src_files",
    srcs: [
        "lib/libf2fs_io.c",
        "mkfs/f2fs_format_main.c",
    ],
}

cc_defaults {
    name: "fsck_main_src_files",
    srcs: [
        "fsck/dir.c",
        "fsck/dict.c",
        "fsck/mkquota.c",
        "fsck/quotaio.c",
        "fsck/quotaio_tree.c",
        "fsck/quotaio_v2.c",
        "fsck/node.c",
        "fsck/segment.c",
        "fsck/xattr.c",
        "fsck/main.c",
        "fsck/mount.c",
        "lib/libf2fs.c",
        "lib/libf2fs_io.c",
    ],
}

cc_library_static {
    name: "libf2fs_fmt",
    defaults: [
        "f2fs-tools-defaults",
        "libf2fs_src_files"
    ],
}

cc_library_host_static {
    name: "libf2fs_fmt_host",
    defaults: [
        "f2fs-tools-defaults",
        "libf2fs_src_files"
    ],
    target: {
        windows: {
            include_dirs: [ "external/e2fsprogs/include/mingw" ],
            cflags: ["-DANDROID_WINDOWS_HOST"],
            enabled: true
	},
    },
}

cc_binary {
    name: "make_f2fs",
    defaults: [
        "f2fs-tools-defaults",
        "make_f2fs_src_files",
    ],
    host_supported: true,
    target: {
        android: {
            static_libs: [
                "libf2fs_fmt",
            ],
            shared_libs: [
                "libext2_uuid",
                "libsparse",
                "libbase",
            ],
        },
        host: {
            static_libs: [
	        "libf2fs_fmt_host",
                "libext2_uuid",
                "libsparse",
                "libbase",
                "libz",
            ],
        },
        windows: {
            include_dirs: [ "external/e2fsprogs/include/mingw" ],
            cflags: ["-DANDROID_WINDOWS_HOST"],
            ldflags: ["-static"],
            host_ldlibs: ["-lws2_32"],
            enabled: true
	},
    },
}

cc_binary {
    name: "fsck.f2fs",
    defaults: [
        "f2fs-tools-defaults",
        "fsck_main_src_files",
    ],
    host_supported: true,
    srcs: ["fsck/fsck.c"],
    shared_libs: [
        "libext2_uuid",
        "libsparse",
        "libbase",
    ],
}

cc_binary {
    name: "sload_f2fs",
    defaults: [
        "f2fs-tools-defaults",
        "fsck_main_src_files",
    ],
    host_supported: true,
    cflags: ["-DWITH_SLOAD"],
    srcs: ["fsck/fsck.c", "fsck/sload.c"],
    target: {
        android: {
            shared_libs: [
                "libext2_uuid",
                "libsparse",
                "libbase",
                "libcrypto",
                "libselinux",
                "libcutils",
                "liblog",
            ],
        },
        host: {
            static_libs: [
                "libext2_uuid",
                "libsparse",
                "libbase",
                "libcrypto",
                "libselinux",
                "libcutils",
                "liblog",
                "libz",
            ],
        },
    },
    stl: "libc++_static",
}

cc_binary {
    name: "check_f2fs",
    host_supported: false,
    cflags: ["--static"],
    srcs: ["tools/check_f2fs.c"],
}