diff --git a/.gitmodules b/.gitmodules index 116c03523..97db6d054 100644 --- a/.gitmodules +++ b/.gitmodules @@ -6,7 +6,7 @@ url = https://github.com/topjohnwu/ndk-busybox.git [submodule "dtc"] path = native/jni/external/dtc - url = https://github.com/dgibson/dtc + url = https://github.com/dgibson/dtc.git [submodule "lz4"] path = native/jni/external/lz4 url = https://github.com/lz4/lz4.git @@ -31,6 +31,9 @@ [submodule "libcxx"] path = native/jni/external/libcxx url = https://github.com/topjohnwu/libcxx.git +[submodule "zlib"] + path = native/jni/external/zlib + url = https://android.googlesource.com/platform/external/zlib [submodule "termux-elf-cleaner"] path = tools/termux-elf-cleaner url = https://github.com/termux/termux-elf-cleaner.git diff --git a/native/jni/Android.mk b/native/jni/Android.mk index 613fea98d..134ae1d9f 100644 --- a/native/jni/Android.mk +++ b/native/jni/Android.mk @@ -83,7 +83,7 @@ ifdef B_BOOT include $(CLEAR_VARS) LOCAL_MODULE := magiskboot -LOCAL_STATIC_LIBRARIES := libmincrypt liblzma liblz4 libbz2 libfdt libutils +LOCAL_STATIC_LIBRARIES := libmincrypt liblzma liblz4 libbz2 libfdt libutils libz LOCAL_C_INCLUDES := jni/include LOCAL_SRC_FILES := \ @@ -97,7 +97,6 @@ LOCAL_SRC_FILES := \ magiskboot/pattern.cpp \ utils/cpio.cpp -LOCAL_LDLIBS := -lz LOCAL_LDFLAGS := -static include $(BUILD_EXECUTABLE) diff --git a/native/jni/external/Android.mk b/native/jni/external/Android.mk index 3003a9375..eae7fe334 100644 --- a/native/jni/external/Android.mk +++ b/native/jni/external/Android.mk @@ -371,6 +371,31 @@ LOCAL_SRC_FILES := \ xhook/libxhook/jni/xh_elf.c include $(BUILD_STATIC_LIBRARY) +# libz.a +include $(CLEAR_VARS) +LOCAL_MODULE:= libz +LOCAL_C_INCLUDES := $(LOCAL_PATH)/zlib +LOCAL_EXPORT_C_INCLUDES := $(LOCAL_C_INCLUDES) +LOCAL_CFLAGS := -DHAVE_HIDDEN -DZLIB_CONST -Wall -Werror -Wno-unused -Wno-unused-parameter +LOCAL_SRC_FILES := \ + zlib/adler32.c \ + zlib/compress.c \ + zlib/cpu_features.c \ + zlib/crc32.c \ + zlib/deflate.c \ + zlib/gzclose.c \ + zlib/gzlib.c \ + zlib/gzread.c \ + zlib/gzwrite.c \ + zlib/infback.c \ + zlib/inffast.c \ + zlib/inflate.c \ + zlib/inftrees.c \ + zlib/trees.c \ + zlib/uncompr.c \ + zlib/zutil.c +include $(BUILD_STATIC_LIBRARY) + CWD := $(LOCAL_PATH) include $(CWD)/systemproperties/Android.mk include $(CWD)/mincrypt/Android.mk diff --git a/native/jni/external/zlib b/native/jni/external/zlib new file mode 160000 index 000000000..3a0aa2b3d --- /dev/null +++ b/native/jni/external/zlib @@ -0,0 +1 @@ +Subproject commit 3a0aa2b3df38ad6298f91c4d8afef708bb4f088e