• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1LOCAL_PATH:= $(call my-dir)
2
3# f2fs-tools depends on Linux kernel headers being in the system include path.
4ifeq ($(HOST_OS),linux)
5
6# The versions depend on $(LOCAL_PATH)/VERSION
7version_CFLAGS := -DF2FS_MAJOR_VERSION=1 -DF2FS_MINOR_VERSION=4 -DF2FS_TOOLS_VERSION=\"1.4.0\" -DF2FS_TOOLS_DATE=\"2014-10-18\"
8
9# external/e2fsprogs/lib is needed for uuid/uuid.h
10common_C_INCLUDES := $(LOCAL_PATH)/include external/e2fsprogs/lib/
11
12#----------------------------------------------------------
13include $(CLEAR_VARS)
14LOCAL_MODULE := libf2fs_fmt
15LOCAL_SRC_FILES := \
16	lib/libf2fs.c \
17	mkfs/f2fs_format.c \
18	mkfs/f2fs_format_utils.c \
19
20LOCAL_C_INCLUDES := $(common_C_INCLUDES)
21LOCAL_CFLAGS := $(version_CFLAGS)
22LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/mkfs
23include $(BUILD_STATIC_LIBRARY)
24
25#----------------------------------------------------------
26include $(CLEAR_VARS)
27LOCAL_MODULE := libf2fs_fmt_host
28LOCAL_SRC_FILES := \
29	lib/libf2fs.c \
30	mkfs/f2fs_format.c \
31	mkfs/f2fs_format_utils.c \
32
33LOCAL_C_INCLUDES := $(common_C_INCLUDES)
34LOCAL_CFLAGS := $(version_CFLAGS)
35LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/mkfs
36include $(BUILD_HOST_STATIC_LIBRARY)
37
38#----------------------------------------------------------
39include $(CLEAR_VARS)
40LOCAL_MODULE := libf2fs_fmt_host_dyn
41LOCAL_SRC_FILES := \
42	lib/libf2fs.c \
43	mkfs/f2fs_format.c \
44
45LOCAL_C_INCLUDES := $(common_C_INCLUDES)
46LOCAL_CFLAGS := $(version_CFLAGS)
47LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/mkfs
48LOCAL_STATIC_LIBRARIES := \
49     libf2fs_ioutils_host \
50     libext2_uuid \
51     libsparse \
52     libz
53# LOCAL_LDLIBS := -ldl
54include $(BUILD_HOST_SHARED_LIBRARY)
55
56#----------------------------------------------------------
57include $(CLEAR_VARS)
58# The LOCAL_MODULE name is referenced by the code. Don't change it.
59LOCAL_MODULE := mkfs.f2fs
60
61# mkfs.f2fs is used in recovery: must be static.
62LOCAL_FORCE_STATIC_EXECUTABLE := true
63
64LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin
65
66LOCAL_SRC_FILES := \
67	lib/libf2fs_io.c \
68	mkfs/f2fs_format_main.c
69LOCAL_C_INCLUDES := $(common_C_INCLUDES)
70LOCAL_CFLAGS := $(version_CFLAGS)
71LOCAL_STATIC_LIBRARIES := libc libf2fs_fmt libext2_uuid
72LOCAL_MODULE_TAGS := optional
73include $(BUILD_EXECUTABLE)
74
75#----------------------------------------------------------
76include $(CLEAR_VARS)
77LOCAL_MODULE := make_f2fs
78
79LOCAL_SRC_FILES := \
80	lib/libf2fs_io.c \
81	mkfs/f2fs_format_main.c
82LOCAL_C_INCLUDES := $(common_C_INCLUDES)
83LOCAL_CFLAGS := $(version_CFLAGS)
84LOCAL_STATIC_LIBRARIES := libf2fs_fmt
85LOCAL_SHARED_LIBRARIES := libext2_uuid
86LOCAL_SYSTEM_SHARED_LIBRARIES := libc
87LOCAL_MODULE_TAGS := optional
88include $(BUILD_EXECUTABLE)
89
90#----------------------------------------------------------
91include $(CLEAR_VARS)
92# The LOCAL_MODULE name is referenced by the code. Don't change it.
93LOCAL_MODULE := fsck.f2fs
94LOCAL_SRC_FILES := \
95	fsck/dump.c \
96	fsck/fsck.c \
97	fsck/main.c \
98	fsck/mount.c \
99	lib/libf2fs.c \
100	lib/libf2fs_io.c \
101
102LOCAL_C_INCLUDES := $(common_C_INCLUDES)
103LOCAL_CFLAGS := $(version_CFLAGS)
104LOCAL_SHARED_LIBRARIES := libext2_uuid
105LOCAL_SYSTEM_SHARED_LIBRARIES := libc
106LOCAL_MODULE_TAGS := optional
107include $(BUILD_EXECUTABLE)
108
109#----------------------------------------------------------
110include $(CLEAR_VARS)
111LOCAL_MODULE := fsck.f2fs
112LOCAL_SRC_FILES := \
113	fsck/dump.c \
114	fsck/fsck.c \
115	fsck/main.c \
116	fsck/mount.c \
117	lib/libf2fs.c \
118	lib/libf2fs_io.c \
119
120LOCAL_C_INCLUDES := $(common_C_INCLUDES)
121LOCAL_CFLAGS := $(version_CFLAGS)
122LOCAL_HOST_SHARED_LIBRARIES :=  libext2_uuid
123include $(BUILD_HOST_EXECUTABLE)
124
125endif
126