// Copyright 2017 The Android Open Source Project package { default_applicable_licenses: ["external_f2fs-tools_license"], } // Added automatically by a large-scale-change that took the approach of // 'apply every license found to every target'. While this makes sure we respect // every license restriction, it may not be entirely correct. // // e.g. GPL in an MIT project might only apply to the contrib/ directory. // // Please consider splitting the single license below into multiple licenses, // taking care not to lose any license_kind information, and overriding the // default license using the 'licenses: [...]' property on targets as needed. // // For unused files, consider creating a 'fileGroup' with "//visibility:private" // to attach the license to, and including a comment whether the files may be // used in the current project. // // large-scale-change included anything that looked like it might be a license // text as a license_text. e.g. LICENSE, NOTICE, COPYING etc. // // Please consider removing redundant or irrelevant files from 'license_text:'. // See: http://go/android-license-faq license { name: "external_f2fs-tools_license", visibility: [":__subpackages__"], license_kinds: [ "SPDX-license-identifier-BSD", "SPDX-license-identifier-GPL", "SPDX-license-identifier-GPL-2.0", "SPDX-license-identifier-LGPL", "SPDX-license-identifier-LGPL-2.1", ], license_text: [ "COPYING", "NOTICE", ], } cc_defaults { name: "f2fs-tools-defaults", cflags: [ "-DF2FS_MAJOR_VERSION=1", "-DF2FS_MINOR_VERSION=14", "-DF2FS_TOOLS_VERSION=\"1.14.0\"", "-DF2FS_TOOLS_DATE=\"2020-08-24\"", "-DWITH_ANDROID", "-Wall", "-Werror", "-Wno-format", "-Wno-macro-redefined", "-Wno-missing-field-initializers", "-Wno-pointer-arith", "-Wno-sign-compare", "-Wno-unused-function", "-Wno-string-plus-int", ], local_include_dirs: [ "include", "mkfs", "fsck", ], include_dirs: [ "external/e2fsprogs/lib/", "external/e2fsprogs/lib/uuid", "system/core/libsparse/include", ], target: { windows: { enabled: false, }, }, } cc_defaults { name: "libf2fs_src_files", cflags: ["-DWITH_BLKDISCARD"], srcs: [ "lib/libf2fs.c", "mkfs/f2fs_format.c", "mkfs/f2fs_format_utils.c", "lib/libf2fs_zoned.c", "lib/nls_utf8.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", "lib/libf2fs_zoned.c", "lib/nls_utf8.c", "fsck/dump.c", ], } cc_library_static { name: "libf2fs_fmt", recovery_available: true, 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", "-Wno-typedef-redefinition", "-Wno-unused-parameter", ], enabled: true }, }, } cc_defaults { name: "make_f2fs_defaults", defaults: [ "f2fs-tools-defaults", "make_f2fs_src_files", ], host_supported: true, recovery_available: 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: "make_f2fs", defaults: [ "make_f2fs_defaults", ], } cc_binary_host { name: "make_f2fs_casefold", defaults: [ "make_f2fs_defaults", ], target: { host: { cflags: ["-DCONF_CASEFOLD", "-DCONF_PROJID"], }, windows: { cflags: ["-DCONF_CASEFOLD", "-DCONF_PROJID"], }, }, } cc_binary { name: "fsck.f2fs", defaults: [ "f2fs-tools-defaults", "fsck_main_src_files", ], host_supported: true, cflags: ["-DWITH_RESIZE", "-DWITH_DEFRAG", "-DWITH_DUMP"], srcs: ["fsck/fsck.c", "fsck/resize.c", "fsck/defrag.c"], shared_libs: [ "libext2_uuid", "libsparse", "libbase", ], symlinks: ["resize.f2fs", "defrag.f2fs", "dump.f2fs"], } cc_binary { name: "sload_f2fs", defaults: [ "f2fs-tools-defaults", "fsck_main_src_files", ], host_supported: true, recovery_available: true, cflags: ["-DWITH_SLOAD"], srcs: [ "fsck/fsck.c", "fsck/sload.c", "fsck/compress.c", ], target: { android: { shared_libs: [ "libext2_uuid", "libsparse", "libbase", "libcrypto", "libselinux", "libcutils", "liblog", "liblz4", ], }, host: { static_libs: [ "libext2_uuid", "libsparse", "libbase", "libcrypto", "libselinux", "libcutils", "liblog", "libz", "liblz4", ], }, }, stl: "libc++_static", } cc_binary { name: "check_f2fs", host_supported: false, cflags: [ "--static", "-U_FORTIFY_SOURCE", ], srcs: ["tools/check_f2fs.c"], product_specific: true, } cc_defaults { name: "tools-defaults", cflags: [ "-Wno-unused-function", ], local_include_dirs: [ "include", ], target: { windows: { enabled: false, }, darwin: { enabled: false, }, }, product_specific: true, } cc_binary { name: "f2fscrypt", defaults: [ "tools-defaults", ], shared_libs: [ "libext2_uuid", ], srcs: [ "tools/f2fscrypt.c", "tools/sha512.c", ], } cc_binary { name: "f2fsstat", defaults: [ "tools-defaults", ], srcs: [ "tools/f2fstat.c", ], } cc_binary { name: "f2fs.fibmap", defaults: [ "tools-defaults", ], srcs: [ "tools/fibmap.c", ], }