aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJP Abgrall <jpa@google.com>2014-06-13 18:07:42 -0700
committerJP Abgrall <jpa@google.com>2014-06-24 20:52:09 -0700
commit00dc8a1c6c87acf687e64e66cfc2fd7ca28e646e (patch)
tree53ca6038ce54538b8f895ed3d4ead07bc6ed2e32
parentf590f39c3542b502891ed24941b688b44b8f44af (diff)
downloadf2fs-tools-00dc8a1c6c87acf687e64e66cfc2fd7ca28e646e.tar.gz
F2FS fmt as shared lib, and static tool for /sbin/
It now uses external/e2fsprogs/lib/uuid: for uuid routine. system/extras/f2fs_utils: io utils to work on sparse files. Change-Id: I3d86315f2f6f8693532e26a664c7f2c230fd60e3 Signed-off-by: JP Abgrall <jpa@google.com>
-rw-r--r--Android.mk65
1 files changed, 56 insertions, 9 deletions
diff --git a/Android.mk b/Android.mk
index 7c525f6..bee1071 100644
--- a/Android.mk
+++ b/Android.mk
@@ -5,10 +5,13 @@ ifeq ($(HOST_OS),linux)
# The versions depend on $(LOCAL_PATH)/VERSION
version_CFLAGS := -DF2FS_MAJOR_VERSION=1 -DF2FS_MINOR_VERSION=2 -DF2FS_TOOLS_VERSION=\"1.2.0\" -DF2FS_TOOLS_DATE=\"2013-10-25\"
+
# external/e2fsprogs/lib is needed for uuid/uuid.h
common_C_INCLUDES := $(LOCAL_PATH)/include external/e2fsprogs/lib/
+#----------------------------------------------------------
include $(CLEAR_VARS)
+LOCAL_MODULE := libf2fs_fmt
LOCAL_SRC_FILES := \
lib/libf2fs.c \
mkfs/f2fs_format.c \
@@ -18,10 +21,11 @@ LOCAL_C_INCLUDES := $(common_C_INCLUDES)
LOCAL_CFLAGS := $(version_CFLAGS)
LOCAL_EXPORT_CFLAGS := $(version_CFLAGS)
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/mkfs
-LOCAL_MODULE := libf2fs_fmt
include $(BUILD_STATIC_LIBRARY)
+#----------------------------------------------------------
include $(CLEAR_VARS)
+LOCAL_MODULE := libf2fs_fmt_host
LOCAL_SRC_FILES := \
lib/libf2fs.c \
mkfs/f2fs_format.c \
@@ -31,25 +35,54 @@ LOCAL_C_INCLUDES := $(common_C_INCLUDES)
LOCAL_CFLAGS := $(version_CFLAGS)
LOCAL_EXPORT_CFLAGS := $(version_CFLAGS)
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/mkfs
-LOCAL_MODULE := libf2fs_fmt_host
include $(BUILD_HOST_STATIC_LIBRARY)
+#----------------------------------------------------------
include $(CLEAR_VARS)
+LOCAL_MODULE := libf2fs_fmt_host_dyn
LOCAL_SRC_FILES := \
- lib/libf2fs_io.c \
- mkfs/f2fs_format_main.c \
+ lib/libf2fs.c \
+ mkfs/f2fs_format.c \
LOCAL_C_INCLUDES := $(common_C_INCLUDES)
LOCAL_CFLAGS := $(version_CFLAGS)
+LOCAL_EXPORT_CFLAGS := $(version_CFLAGS)
+LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/mkfs
+LOCAL_STATIC_LIBRARIES := \
+ libf2fs_ioutils_host \
+ libext2_uuid_host \
+ libsparse_host \
+ libz
+# LOCAL_LDLIBS := -ldl
+include $(BUILD_HOST_SHARED_LIBRARY)
+
+#----------------------------------------------------------
+include $(CLEAR_VARS)
# The LOCAL_MODULE name is referenced by the code. Don't change it.
LOCAL_MODULE := mkfs.f2fs
-LOCAL_SHARED_LIBRARIES := libext2_uuid
-LOCAL_SYSTEM_SHARED_LIBRARIES := libc
-LOCAL_STATIC_LIBRARIES := libf2fs_fmt
+
+# mkfs.f2fs is used in recovery: must be static.
+LOCAL_FORCE_STATIC_EXECUTABLE := true
+
+# Recovery needs it also, so it must go into root/sbin/.
+# Directly generating into the recovery/root/sbin gets clobbered
+# when the recovery image is being made.
+# LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin
+LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
+
+LOCAL_SRC_FILES := \
+ lib/libf2fs_io.c \
+ mkfs/f2fs_format_main.c
+LOCAL_C_INCLUDES := $(common_C_INCLUDES)
+LOCAL_CFLAGS := $(version_CFLAGS)
+LOCAL_STATIC_LIBRARIES := libc libf2fs_fmt libext2_uuid_static
LOCAL_MODULE_TAGS := optional
include $(BUILD_EXECUTABLE)
+#----------------------------------------------------------
include $(CLEAR_VARS)
+# The LOCAL_MODULE name is referenced by the code. Don't change it.
+LOCAL_MODULE := fsck.f2fs
LOCAL_SRC_FILES := \
fsck/dump.c \
fsck/fsck.c \
@@ -60,11 +93,25 @@ LOCAL_SRC_FILES := \
LOCAL_C_INCLUDES := $(common_C_INCLUDES)
LOCAL_CFLAGS := $(version_CFLAGS)
-# The LOCAL_MODULE name is referenced by the code. Don't change it.
-LOCAL_MODULE := fsck.f2fs
LOCAL_SHARED_LIBRARIES := libext2_uuid
LOCAL_SYSTEM_SHARED_LIBRARIES := libc
LOCAL_MODULE_TAGS := optional
include $(BUILD_EXECUTABLE)
+#----------------------------------------------------------
+include $(CLEAR_VARS)
+LOCAL_MODULE := fsck.f2fs
+LOCAL_SRC_FILES := \
+ fsck/dump.c \
+ fsck/fsck.c \
+ fsck/main.c \
+ fsck/mount.c \
+ lib/libf2fs.c \
+ lib/libf2fs_io.c \
+
+LOCAL_C_INCLUDES := $(common_C_INCLUDES)
+LOCAL_CFLAGS := $(version_CFLAGS)
+LOCAL_HOST_SHARED_LIBRARIES := libext2_uuid_host
+include $(BUILD_HOST_EXECUTABLE)
+
endif