2016-12-30 06:06:19 +08:00
|
|
|
LOCAL_PATH := $(call my-dir)
|
2016-09-08 20:59:48 +08:00
|
|
|
|
2017-09-14 01:44:36 +08:00
|
|
|
# Some handy paths
|
2017-10-19 00:07:48 +08:00
|
|
|
EXT_PATH := jni/external
|
|
|
|
SE_PATH := $(EXT_PATH)/selinux
|
|
|
|
LIBSELINUX := $(SE_PATH)/libselinux/include
|
|
|
|
LIBSEPOL := $(SE_PATH)/libsepol/include $(SE_PATH)/libsepol/cil/include
|
|
|
|
LIBLZMA := $(EXT_PATH)/xz/src/liblzma/api
|
|
|
|
LIBLZ4 := $(EXT_PATH)/lz4/lib
|
|
|
|
LIBBZ2 := $(EXT_PATH)/bzip2
|
|
|
|
LIBFDT := $(EXT_PATH)/dtc/libfdt
|
2018-04-28 20:22:42 +08:00
|
|
|
LIBNANOPB := $(EXT_PATH)/nanopb
|
2018-08-10 00:40:23 +08:00
|
|
|
COMMON_UTILS := \
|
|
|
|
utils/file.c \
|
|
|
|
utils/list.c \
|
|
|
|
utils/misc.c \
|
|
|
|
utils/vector.c \
|
|
|
|
utils/xwrap.c
|
2017-09-14 01:44:36 +08:00
|
|
|
|
2017-07-31 23:47:50 +08:00
|
|
|
########################
|
|
|
|
# Binaries
|
|
|
|
########################
|
|
|
|
|
2018-05-13 03:04:40 +08:00
|
|
|
ifdef B_MAGISK
|
2017-11-06 05:41:03 +08:00
|
|
|
|
2017-07-31 23:47:50 +08:00
|
|
|
# magisk main binary
|
2017-04-05 03:44:13 +08:00
|
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := magisk
|
2017-04-05 09:14:33 +08:00
|
|
|
LOCAL_SHARED_LIBRARIES := libsqlite libselinux
|
2018-04-28 20:22:42 +08:00
|
|
|
LOCAL_STATIC_LIBRARIES := libnanopb
|
2017-04-05 03:44:13 +08:00
|
|
|
LOCAL_C_INCLUDES := \
|
2017-09-14 01:44:36 +08:00
|
|
|
jni/include \
|
2018-04-15 03:18:18 +08:00
|
|
|
jni/magiskpolicy \
|
2018-01-29 15:34:05 +08:00
|
|
|
$(EXT_PATH)/include \
|
2018-04-28 20:22:42 +08:00
|
|
|
$(LIBSELINUX) \
|
|
|
|
$(LIBNANOPB)
|
2017-04-05 03:44:13 +08:00
|
|
|
|
|
|
|
LOCAL_SRC_FILES := \
|
2017-11-10 00:54:54 +08:00
|
|
|
core/magisk.c \
|
|
|
|
core/daemon.c \
|
2018-07-06 07:57:18 +08:00
|
|
|
core/log_daemon.c \
|
2017-11-10 00:54:54 +08:00
|
|
|
core/bootstages.c \
|
2017-11-27 15:37:28 +08:00
|
|
|
core/socket.c \
|
2018-06-13 04:34:05 +08:00
|
|
|
core/db.c \
|
2017-04-05 06:08:53 +08:00
|
|
|
magiskhide/magiskhide.c \
|
|
|
|
magiskhide/proc_monitor.c \
|
2017-07-03 00:57:20 +08:00
|
|
|
magiskhide/hide_utils.c \
|
2018-04-28 20:22:42 +08:00
|
|
|
resetprop/persist_props.c \
|
|
|
|
resetprop/resetprop.c \
|
2017-04-15 03:23:09 +08:00
|
|
|
resetprop/system_properties.cpp \
|
|
|
|
su/su.c \
|
|
|
|
su/activity.c \
|
|
|
|
su/pts.c \
|
2017-05-29 18:56:00 +08:00
|
|
|
su/su_daemon.c \
|
2017-12-07 01:30:48 +08:00
|
|
|
su/su_socket.c \
|
2018-08-10 00:40:23 +08:00
|
|
|
utils/img.c \
|
|
|
|
$(COMMON_UTILS)
|
2017-04-05 06:08:53 +08:00
|
|
|
|
2018-05-13 05:22:46 +08:00
|
|
|
LOCAL_CFLAGS := -DIS_DAEMON -DSELINUX
|
2017-04-05 03:44:13 +08:00
|
|
|
LOCAL_LDLIBS := -llog
|
|
|
|
include $(BUILD_EXECUTABLE)
|
|
|
|
|
2017-12-04 15:16:41 +08:00
|
|
|
endif
|
|
|
|
|
2018-05-13 03:04:40 +08:00
|
|
|
ifdef B_INIT
|
2017-11-10 00:54:54 +08:00
|
|
|
|
2017-11-06 05:41:03 +08:00
|
|
|
# magiskinit
|
|
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := magiskinit
|
2018-08-10 05:03:54 +08:00
|
|
|
LOCAL_STATIC_LIBRARIES := libsepol libxz
|
2017-11-10 00:54:54 +08:00
|
|
|
LOCAL_C_INCLUDES := \
|
|
|
|
jni/include \
|
2017-11-30 20:57:40 +08:00
|
|
|
jni/magiskpolicy \
|
2018-08-10 05:03:54 +08:00
|
|
|
$(EXT_PATH)/include \
|
2018-06-14 00:59:08 +08:00
|
|
|
out \
|
2018-05-13 03:04:40 +08:00
|
|
|
out/$(TARGET_ARCH_ABI) \
|
2018-08-10 04:37:38 +08:00
|
|
|
$(LIBSEPOL)
|
2017-11-10 00:54:54 +08:00
|
|
|
|
2017-11-06 05:41:03 +08:00
|
|
|
LOCAL_SRC_FILES := \
|
2017-11-10 00:54:54 +08:00
|
|
|
core/magiskinit.c \
|
2017-11-06 05:41:03 +08:00
|
|
|
magiskpolicy/api.c \
|
|
|
|
magiskpolicy/magiskpolicy.c \
|
|
|
|
magiskpolicy/rules.c \
|
2017-12-07 01:30:48 +08:00
|
|
|
magiskpolicy/sepolicy.c \
|
2018-08-10 00:40:23 +08:00
|
|
|
$(COMMON_UTILS)
|
2017-11-06 05:41:03 +08:00
|
|
|
|
|
|
|
LOCAL_LDFLAGS := -static
|
|
|
|
include $(BUILD_EXECUTABLE)
|
|
|
|
|
2018-05-13 03:04:40 +08:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef B_BOOT
|
|
|
|
|
2017-07-31 23:47:50 +08:00
|
|
|
# magiskboot
|
|
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := magiskboot
|
2018-01-29 15:34:05 +08:00
|
|
|
LOCAL_STATIC_LIBRARIES := libmincrypt liblzma liblz4 libbz2 libfdt
|
2017-07-31 23:47:50 +08:00
|
|
|
LOCAL_C_INCLUDES := \
|
2017-09-14 01:44:36 +08:00
|
|
|
jni/include \
|
2018-01-29 15:34:05 +08:00
|
|
|
$(EXT_PATH)/include \
|
2017-09-14 01:44:36 +08:00
|
|
|
$(LIBLZMA) \
|
|
|
|
$(LIBLZ4) \
|
2017-09-15 02:52:27 +08:00
|
|
|
$(LIBBZ2) \
|
|
|
|
$(LIBFDT)
|
2017-04-05 03:44:13 +08:00
|
|
|
|
2017-07-31 23:47:50 +08:00
|
|
|
LOCAL_SRC_FILES := \
|
2018-08-10 00:40:23 +08:00
|
|
|
magiskboot/cpio.c \
|
2017-07-31 23:47:50 +08:00
|
|
|
magiskboot/main.c \
|
|
|
|
magiskboot/bootimg.c \
|
|
|
|
magiskboot/hexpatch.c \
|
|
|
|
magiskboot/compress.c \
|
2018-01-29 03:12:35 +08:00
|
|
|
magiskboot/format.c \
|
2017-09-15 02:52:27 +08:00
|
|
|
magiskboot/dtb.c \
|
2017-12-01 17:17:24 +08:00
|
|
|
magiskboot/ramdisk.c \
|
2018-08-10 00:40:23 +08:00
|
|
|
magiskboot/pattern.c \
|
|
|
|
$(COMMON_UTILS)
|
2017-07-30 20:14:12 +08:00
|
|
|
|
2017-12-01 17:38:57 +08:00
|
|
|
LOCAL_CFLAGS := -DXWRAP_EXIT
|
2017-11-06 05:41:03 +08:00
|
|
|
LOCAL_LDLIBS := -lz
|
2017-09-11 17:34:05 +08:00
|
|
|
include $(BUILD_EXECUTABLE)
|
|
|
|
|
2018-05-13 03:04:40 +08:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef B_BXZ
|
|
|
|
|
2017-08-02 18:23:42 +08:00
|
|
|
# b64xz
|
|
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := b64xz
|
2018-08-10 04:37:38 +08:00
|
|
|
LOCAL_STATIC_LIBRARIES := libxz
|
|
|
|
LOCAL_C_INCLUDES := $(EXT_PATH)/include
|
2017-08-02 18:23:42 +08:00
|
|
|
LOCAL_SRC_FILES := b64xz.c
|
|
|
|
LOCAL_LDFLAGS := -static
|
|
|
|
include $(BUILD_EXECUTABLE)
|
2018-05-13 03:04:40 +08:00
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef B_BB
|
|
|
|
|
2017-08-02 18:23:42 +08:00
|
|
|
# Busybox
|
2017-09-14 01:44:36 +08:00
|
|
|
include jni/external/busybox/Android.mk
|
2017-07-31 23:47:50 +08:00
|
|
|
|
2017-11-06 05:41:03 +08:00
|
|
|
endif
|
|
|
|
|
2017-07-31 23:47:50 +08:00
|
|
|
########################
|
2017-09-14 01:44:36 +08:00
|
|
|
# Externals
|
2017-07-31 23:47:50 +08:00
|
|
|
########################
|
|
|
|
include jni/external/Android.mk
|