Magisk/jni/Android.mk

131 lines
2.8 KiB
Makefile
Raw Normal View History

2016-12-29 23:06:19 +01:00
LOCAL_PATH := $(call my-dir)
2017-09-13 19:44:36 +02:00
# Some handy paths
JNI_ROOT := jni
SELINUX_PATH := jni/external/selinux
COMPRESS_LIB := jni/external/ndk-compression
2017-09-14 20:52:27 +02:00
DTC_PATH := jni/external/dtc
2017-09-13 19:44:36 +02:00
LIBSELINUX := $(SELINUX_PATH)/libselinux/include
LIBSEPOL := $(SELINUX_PATH)/libsepol/include $(SELINUX_PATH)/libsepol/cil/include
LIBZ := $(COMPRESS_LIB)/zlib
LIBLZMA := $(COMPRESS_LIB)/xz/src/liblzma/api
LIBLZ4 := $(COMPRESS_LIB)/lz4/lib
LIBBZ2 := $(COMPRESS_LIB)/bzip2
2017-09-14 20:52:27 +02:00
LIBFDT := $(DTC_PATH)/libfdt
2017-09-13 19:44:36 +02:00
2017-07-31 17:47:50 +02:00
########################
# Binaries
########################
# magisk main binary
2017-04-04 21:44:13 +02:00
include $(CLEAR_VARS)
LOCAL_MODULE := magisk
LOCAL_STATIC_LIBRARIES := libsepol
LOCAL_SHARED_LIBRARIES := libsqlite libselinux
2017-04-04 21:44:13 +02:00
LOCAL_C_INCLUDES := \
2017-09-13 19:44:36 +02:00
jni/include \
jni/external \
$(LIBSELINUX) \
$(LIBSEPOL)
2017-04-04 21:44:13 +02:00
LOCAL_SRC_FILES := \
2017-08-14 19:25:54 +02:00
daemon/magisk.c \
daemon/daemon.c \
daemon/socket_trans.c \
daemon/log_monitor.c \
daemon/bootstages.c \
2017-04-06 00:12:29 +02:00
utils/misc.c \
2017-04-04 21:44:13 +02:00
utils/vector.c \
utils/xwrap.c \
utils/list.c \
2017-06-24 16:37:45 +02:00
utils/img.c \
2017-10-11 20:57:18 +02:00
utils/file.c \
magiskhide/magiskhide.c \
magiskhide/proc_monitor.c \
2017-07-02 18:57:20 +02:00
magiskhide/hide_utils.c \
magiskpolicy/magiskpolicy.c \
magiskpolicy/rules.c \
magiskpolicy/sepolicy.c \
magiskpolicy/api.c \
resetprop/resetprop.cpp \
2017-04-14 21:23:09 +02:00
resetprop/system_properties.cpp \
su/su.c \
su/activity.c \
su/db.c \
su/pts.c \
su/su_daemon.c \
2017-04-14 21:23:09 +02:00
su/su_socket.c
2017-09-14 15:54:56 +02:00
LOCAL_CFLAGS := -Wno-implicit-exception-spec-mismatch -DIS_DAEMON
2017-07-30 14:14:12 +02:00
LOCAL_CPPFLAGS := -std=c++11
2017-04-04 21:44:13 +02:00
LOCAL_LDLIBS := -llog
include $(BUILD_EXECUTABLE)
2017-07-31 17:47:50 +02:00
# magiskboot
include $(CLEAR_VARS)
LOCAL_MODULE := magiskboot
2017-09-14 20:52:27 +02:00
LOCAL_STATIC_LIBRARIES := libz liblzma liblz4 libbz2 libfdt
2017-07-31 17:47:50 +02:00
LOCAL_C_INCLUDES := \
2017-09-13 19:44:36 +02:00
jni/include \
$(LIBZ) \
$(LIBLZMA) \
$(LIBLZ4) \
2017-09-14 20:52:27 +02:00
$(LIBBZ2) \
$(LIBFDT)
2017-04-04 21:44:13 +02:00
2017-07-31 17:47:50 +02:00
LOCAL_SRC_FILES := \
magiskboot/main.c \
magiskboot/bootimg.c \
magiskboot/hexpatch.c \
magiskboot/compress.c \
magiskboot/boot_utils.c \
magiskboot/cpio.c \
magiskboot/sha1.c \
2017-09-14 17:11:56 +02:00
magiskboot/types.c \
2017-09-14 20:52:27 +02:00
magiskboot/dtb.c \
2017-07-31 17:47:50 +02:00
utils/xwrap.c \
2017-09-14 19:45:39 +02:00
utils/vector.c
2017-07-31 17:47:50 +02:00
LOCAL_CFLAGS := -DZLIB_CONST
include $(BUILD_EXECUTABLE)
2017-07-30 14:14:12 +02:00
2017-09-11 11:34:05 +02:00
# magiskinit
ifeq ($(TARGET_ARCH_ABI), arm64-v8a)
include $(CLEAR_VARS)
LOCAL_MODULE := magiskinit
2017-10-14 15:10:22 +02:00
LOCAL_STATIC_LIBRARIES := libsepol
LOCAL_C_INCLUDES := jni/include $(LIBSEPOL)
LOCAL_SRC_FILES := \
magiskinit.c \
magiskboot/boot_utils.c \
2017-10-11 20:57:18 +02:00
utils/file.c \
2017-09-15 19:32:09 +02:00
utils/xwrap.c \
magiskpolicy/rules.c \
magiskpolicy/sepolicy.c \
magiskpolicy/api.c
2017-10-14 15:10:22 +02:00
LOCAL_CFLAGS := -DNO_SELINUX
2017-09-11 11:34:05 +02:00
LOCAL_LDFLAGS := -static
include $(BUILD_EXECUTABLE)
endif
# 32-bit static binaries
2017-07-30 14:14:12 +02:00
ifneq ($(TARGET_ARCH_ABI), x86_64)
ifneq ($(TARGET_ARCH_ABI), arm64-v8a)
# b64xz
include $(CLEAR_VARS)
LOCAL_MODULE := b64xz
LOCAL_STATIC_LIBRARIES := liblzma
2017-09-13 19:44:36 +02:00
LOCAL_C_INCLUDES := $(LIBLZMA)
LOCAL_SRC_FILES := b64xz.c
LOCAL_LDFLAGS := -static
include $(BUILD_EXECUTABLE)
# Busybox
2017-09-13 19:44:36 +02:00
include jni/external/busybox/Android.mk
2017-07-30 14:14:12 +02:00
endif
endif
2017-07-31 17:47:50 +02:00
########################
2017-09-13 19:44:36 +02:00
# Externals
2017-07-31 17:47:50 +02:00
########################
include jni/external/Android.mk