From 6c229ffa687d077961e37a8bd49830d592748a11 Mon Sep 17 00:00:00 2001 From: topjohnwu Date: Thu, 19 Oct 2017 00:07:48 +0800 Subject: [PATCH] Update external sources --- .gitmodules | 12 +- jni/Android.mk | 23 +- jni/external/Android.mk | 135 ++++++++- jni/external/bzip2 | 1 + jni/external/dtc | 2 +- jni/external/lz4 | 1 + jni/external/ndk-compression | 1 - jni/external/xz | 1 + jni/external/xz_config/config.h | 498 ++++++++++++++++++++++++++++++++ jni/magiskboot/compress.c | 2 +- 10 files changed, 648 insertions(+), 28 deletions(-) create mode 160000 jni/external/bzip2 create mode 160000 jni/external/lz4 delete mode 160000 jni/external/ndk-compression create mode 160000 jni/external/xz create mode 100644 jni/external/xz_config/config.h diff --git a/.gitmodules b/.gitmodules index d87eda592..1c63eaa4c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,9 +4,6 @@ [submodule "jni/su"] path = jni/su url = https://github.com/topjohnwu/MagiskSU.git -[submodule "jni/ndk-compression"] - path = jni/external/ndk-compression - url = https://github.com/topjohnwu/ndk-compression.git [submodule "jni/magiskpolicy"] path = jni/magiskpolicy url = https://github.com/topjohnwu/magiskpolicy.git @@ -19,3 +16,12 @@ [submodule "jni/external/dtc"] path = jni/external/dtc url = https://github.com/dgibson/dtc +[submodule "jni/external/lz4"] + path = jni/external/lz4 + url = https://github.com/lz4/lz4.git +[submodule "jni/external/bzip2"] + path = jni/external/bzip2 + url = https://github.com/nemequ/bzip2.git +[submodule "jni/external/xz"] + path = jni/external/xz + url = https://github.com/xz-mirror/xz.git diff --git a/jni/Android.mk b/jni/Android.mk index 1abc9ce44..b618e05e8 100644 --- a/jni/Android.mk +++ b/jni/Android.mk @@ -2,16 +2,14 @@ LOCAL_PATH := $(call my-dir) # Some handy paths JNI_ROOT := jni -SELINUX_PATH := jni/external/selinux -COMPRESS_LIB := jni/external/ndk-compression -DTC_PATH := jni/external/dtc -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 -LIBFDT := $(DTC_PATH)/libfdt +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 ######################## # Binaries @@ -65,10 +63,9 @@ include $(BUILD_EXECUTABLE) # magiskboot include $(CLEAR_VARS) LOCAL_MODULE := magiskboot -LOCAL_STATIC_LIBRARIES := libz liblzma liblz4 libbz2 libfdt +LOCAL_STATIC_LIBRARIES := liblzma liblz4 libbz2 libfdt LOCAL_C_INCLUDES := \ jni/include \ - $(LIBZ) \ $(LIBLZMA) \ $(LIBLZ4) \ $(LIBBZ2) \ @@ -86,7 +83,7 @@ LOCAL_SRC_FILES := \ magiskboot/dtb.c \ utils/xwrap.c \ utils/vector.c -LOCAL_CFLAGS := -DZLIB_CONST +LOCAL_LDLIBS := -lz include $(BUILD_EXECUTABLE) # magiskinit diff --git a/jni/external/Android.mk b/jni/external/Android.mk index dae2530af..8118275f9 100644 --- a/jni/external/Android.mk +++ b/jni/external/Android.mk @@ -1,5 +1,4 @@ LOCAL_PATH:= $(call my-dir) -EXTERNAL := $(LOCAL_PATH) # libsqlite.so (stub) include $(CLEAR_VARS) @@ -14,7 +13,7 @@ LOCAL_C_INCLUDES := $(LIBSELINUX) LOCAL_SRC_FILES := stubs/selinux_stub.c include $(BUILD_SHARED_LIBRARY) -# libfdt +# libfdt.a include $(CLEAR_VARS) LOCAL_MODULE:= libfdt LOCAL_C_INCLUDES := $(LIBFDT) @@ -30,11 +29,129 @@ LOCAL_SRC_FILES := \ dtc/libfdt/fdt_wip.c include $(BUILD_STATIC_LIBRARY) -# libsepol, static library -include $(SELINUX_PATH)/libsepol/Android.mk +# liblz4.a +include $(CLEAR_VARS) +LOCAL_MODULE := liblz4 +LOCAL_C_INCLUDES += $(LIBLZ4) +LOCAL_SRC_FILES := \ + lz4/lib/lz4.c \ + lz4/lib/lz4frame.c \ + lz4/lib/lz4hc.c \ + lz4/lib/xxhash.c +include $(BUILD_STATIC_LIBRARY) -# Compression libraries for magiskboot -include $(COMPRESS_LIB)/zlib/Android.mk -include $(COMPRESS_LIB)/xz/src/liblzma/Android.mk -include $(COMPRESS_LIB)/lz4/lib/Android.mk -include $(COMPRESS_LIB)/bzip2/Android.mk +# libbz2.a +include $(CLEAR_VARS) +LOCAL_MODULE := libbz2 +LOCAL_C_INCLUDES += $(LIBBZ2) +LOCAL_SRC_FILES := \ + bzip2/blocksort.c \ + bzip2/huffman.c \ + bzip2/crctable.c \ + bzip2/randtable.c \ + bzip2/compress.c \ + bzip2/decompress.c \ + bzip2/bzlib.c +include $(BUILD_STATIC_LIBRARY) + +# liblzma.a +include $(CLEAR_VARS) +LOCAL_MODULE := liblzma +LOCAL_C_INCLUDES += \ + $(EXT_PATH)/xz_config \ + $(EXT_PATH)/xz/src/common \ + $(EXT_PATH)/xz/src/liblzma/api \ + $(EXT_PATH)/xz/src/liblzma/check \ + $(EXT_PATH)/xz/src/liblzma/common \ + $(EXT_PATH)/xz/src/liblzma/delta \ + $(EXT_PATH)/xz/src/liblzma/lz \ + $(EXT_PATH)/xz/src/liblzma/lzma \ + $(EXT_PATH)/xz/src/liblzma/rangecoder \ + $(EXT_PATH)/xz/src/liblzma/simple \ + $(EXT_PATH)/xz/src/liblzma +LOCAL_SRC_FILES := \ + xz/src/common/tuklib_cpucores.c \ + xz/src/common/tuklib_exit.c \ + xz/src/common/tuklib_mbstr_fw.c \ + xz/src/common/tuklib_mbstr_width.c \ + xz/src/common/tuklib_open_stdxxx.c \ + xz/src/common/tuklib_physmem.c \ + xz/src/common/tuklib_progname.c \ + xz/src/liblzma/check/check.c \ + xz/src/liblzma/check/crc32_fast.c \ + xz/src/liblzma/check/crc32_table.c \ + xz/src/liblzma/check/crc64_fast.c \ + xz/src/liblzma/check/crc64_table.c \ + xz/src/liblzma/check/sha256.c \ + xz/src/liblzma/common/alone_decoder.c \ + xz/src/liblzma/common/alone_encoder.c \ + xz/src/liblzma/common/auto_decoder.c \ + xz/src/liblzma/common/block_buffer_decoder.c \ + xz/src/liblzma/common/block_buffer_encoder.c \ + xz/src/liblzma/common/block_decoder.c \ + xz/src/liblzma/common/block_encoder.c \ + xz/src/liblzma/common/block_header_decoder.c \ + xz/src/liblzma/common/block_header_encoder.c \ + xz/src/liblzma/common/block_util.c \ + xz/src/liblzma/common/common.c \ + xz/src/liblzma/common/easy_buffer_encoder.c \ + xz/src/liblzma/common/easy_decoder_memusage.c \ + xz/src/liblzma/common/easy_encoder.c \ + xz/src/liblzma/common/easy_encoder_memusage.c \ + xz/src/liblzma/common/easy_preset.c \ + xz/src/liblzma/common/filter_buffer_decoder.c \ + xz/src/liblzma/common/filter_buffer_encoder.c \ + xz/src/liblzma/common/filter_common.c \ + xz/src/liblzma/common/filter_decoder.c \ + xz/src/liblzma/common/filter_encoder.c \ + xz/src/liblzma/common/filter_flags_decoder.c \ + xz/src/liblzma/common/filter_flags_encoder.c \ + xz/src/liblzma/common/hardware_cputhreads.c \ + xz/src/liblzma/common/hardware_physmem.c \ + xz/src/liblzma/common/index.c \ + xz/src/liblzma/common/index_decoder.c \ + xz/src/liblzma/common/index_encoder.c \ + xz/src/liblzma/common/index_hash.c \ + xz/src/liblzma/common/outqueue.c \ + xz/src/liblzma/common/stream_buffer_decoder.c \ + xz/src/liblzma/common/stream_buffer_encoder.c \ + xz/src/liblzma/common/stream_decoder.c \ + xz/src/liblzma/common/stream_encoder.c \ + xz/src/liblzma/common/stream_encoder_mt.c \ + xz/src/liblzma/common/stream_flags_common.c \ + xz/src/liblzma/common/stream_flags_decoder.c \ + xz/src/liblzma/common/stream_flags_encoder.c \ + xz/src/liblzma/common/vli_decoder.c \ + xz/src/liblzma/common/vli_encoder.c \ + xz/src/liblzma/common/vli_size.c \ + xz/src/liblzma/delta/delta_common.c \ + xz/src/liblzma/delta/delta_decoder.c \ + xz/src/liblzma/delta/delta_encoder.c \ + xz/src/liblzma/lz/lz_decoder.c \ + xz/src/liblzma/lz/lz_encoder.c \ + xz/src/liblzma/lz/lz_encoder_mf.c \ + xz/src/liblzma/lzma/fastpos_table.c \ + xz/src/liblzma/lzma/fastpos_tablegen.c \ + xz/src/liblzma/lzma/lzma2_decoder.c \ + xz/src/liblzma/lzma/lzma2_encoder.c \ + xz/src/liblzma/lzma/lzma_decoder.c \ + xz/src/liblzma/lzma/lzma_encoder.c \ + xz/src/liblzma/lzma/lzma_encoder_optimum_fast.c \ + xz/src/liblzma/lzma/lzma_encoder_optimum_normal.c \ + xz/src/liblzma/lzma/lzma_encoder_presets.c \ + xz/src/liblzma/rangecoder/price_table.c \ + xz/src/liblzma/rangecoder/price_tablegen.c \ + xz/src/liblzma/simple/arm.c \ + xz/src/liblzma/simple/armthumb.c \ + xz/src/liblzma/simple/ia64.c \ + xz/src/liblzma/simple/powerpc.c \ + xz/src/liblzma/simple/simple_coder.c \ + xz/src/liblzma/simple/simple_decoder.c \ + xz/src/liblzma/simple/simple_encoder.c \ + xz/src/liblzma/simple/sparc.c \ + xz/src/liblzma/simple/x86.c +LOCAL_CFLAGS += -DHAVE_CONFIG_H -std=c99 +include $(BUILD_STATIC_LIBRARY) + +# libsepol.a +include $(SE_PATH)/libsepol/Android.mk diff --git a/jni/external/bzip2 b/jni/external/bzip2 new file mode 160000 index 000000000..67d818584 --- /dev/null +++ b/jni/external/bzip2 @@ -0,0 +1 @@ +Subproject commit 67d818584d505503c2bdbd15aec43e6219642762 diff --git a/jni/external/dtc b/jni/external/dtc index fe50bd1ec..22a65c533 160000 --- a/jni/external/dtc +++ b/jni/external/dtc @@ -1 +1 @@ -Subproject commit fe50bd1ecc1da273a7627a76dcd38da9d77e496f +Subproject commit 22a65c5331c22979d416738eb756b9541672e00d diff --git a/jni/external/lz4 b/jni/external/lz4 new file mode 160000 index 000000000..c10863b98 --- /dev/null +++ b/jni/external/lz4 @@ -0,0 +1 @@ +Subproject commit c10863b98e1503af90616ae99725ecd120265dfb diff --git a/jni/external/ndk-compression b/jni/external/ndk-compression deleted file mode 160000 index b5cefe452..000000000 --- a/jni/external/ndk-compression +++ /dev/null @@ -1 +0,0 @@ -Subproject commit b5cefe452bff3c07d3e768f2e2bdcf01eb146ef5 diff --git a/jni/external/xz b/jni/external/xz new file mode 160000 index 000000000..3d566cd51 --- /dev/null +++ b/jni/external/xz @@ -0,0 +1 @@ +Subproject commit 3d566cd519017eee1a400e7961ff14058dfaf33c diff --git a/jni/external/xz_config/config.h b/jni/external/xz_config/config.h new file mode 100644 index 000000000..297782375 --- /dev/null +++ b/jni/external/xz_config/config.h @@ -0,0 +1,498 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* How many MiB of RAM to assume if the real amount cannot be determined. */ +#define ASSUME_RAM 128 + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* #undef ENABLE_NLS */ + +/* Define to 1 if bswap_16 is available. */ +#define HAVE_BSWAP_16 1 + +/* Define to 1 if bswap_32 is available. */ +#define HAVE_BSWAP_32 1 + +/* Define to 1 if bswap_64 is available. */ +#define HAVE_BSWAP_64 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_BYTESWAP_H 1 + +/* Define to 1 if Capsicum is available. */ +/* #undef HAVE_CAPSICUM */ + +/* Define to 1 if the system has the type `CC_SHA256_CTX'. */ +/* #undef HAVE_CC_SHA256_CTX */ + +/* Define to 1 if you have the `CC_SHA256_Init' function. */ +/* #undef HAVE_CC_SHA256_INIT */ + +/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYCURRENT */ + +/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + +/* Define to 1 if crc32 integrity check is enabled. */ +#define HAVE_CHECK_CRC32 1 + +/* Define to 1 if crc64 integrity check is enabled. */ +#define HAVE_CHECK_CRC64 1 + +/* Define to 1 if sha256 integrity check is enabled. */ +#define HAVE_CHECK_SHA256 1 + +/* Define to 1 if you have the `clock_gettime' function. */ +#define HAVE_CLOCK_GETTIME 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_COMMONCRYPTO_COMMONDIGEST_H */ + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* Define to 1 if you have the declaration of `CLOCK_MONOTONIC', and to 0 if + you don't. */ +#define HAVE_DECL_CLOCK_MONOTONIC 1 + +/* Define to 1 if you have the declaration of `program_invocation_name', and + to 0 if you don't. */ +#define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 + +/* Define to 1 if any of HAVE_DECODER_foo have been defined. */ +#define HAVE_DECODERS 1 + +/* Define to 1 if arm decoder is enabled. */ +#define HAVE_DECODER_ARM 1 + +/* Define to 1 if armthumb decoder is enabled. */ +#define HAVE_DECODER_ARMTHUMB 1 + +/* Define to 1 if delta decoder is enabled. */ +#define HAVE_DECODER_DELTA 1 + +/* Define to 1 if ia64 decoder is enabled. */ +#define HAVE_DECODER_IA64 1 + +/* Define to 1 if lzma1 decoder is enabled. */ +#define HAVE_DECODER_LZMA1 1 + +/* Define to 1 if lzma2 decoder is enabled. */ +#define HAVE_DECODER_LZMA2 1 + +/* Define to 1 if powerpc decoder is enabled. */ +#define HAVE_DECODER_POWERPC 1 + +/* Define to 1 if sparc decoder is enabled. */ +#define HAVE_DECODER_SPARC 1 + +/* Define to 1 if x86 decoder is enabled. */ +#define HAVE_DECODER_X86 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if any of HAVE_ENCODER_foo have been defined. */ +#define HAVE_ENCODERS 1 + +/* Define to 1 if arm encoder is enabled. */ +#define HAVE_ENCODER_ARM 1 + +/* Define to 1 if armthumb encoder is enabled. */ +#define HAVE_ENCODER_ARMTHUMB 1 + +/* Define to 1 if delta encoder is enabled. */ +#define HAVE_ENCODER_DELTA 1 + +/* Define to 1 if ia64 encoder is enabled. */ +#define HAVE_ENCODER_IA64 1 + +/* Define to 1 if lzma1 encoder is enabled. */ +#define HAVE_ENCODER_LZMA1 1 + +/* Define to 1 if lzma2 encoder is enabled. */ +#define HAVE_ENCODER_LZMA2 1 + +/* Define to 1 if powerpc encoder is enabled. */ +#define HAVE_ENCODER_POWERPC 1 + +/* Define to 1 if sparc encoder is enabled. */ +#define HAVE_ENCODER_SPARC 1 + +/* Define to 1 if x86 encoder is enabled. */ +#define HAVE_ENCODER_X86 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `futimens' function. */ +#define HAVE_FUTIMENS 1 + +/* Define to 1 if you have the `futimes' function. */ +/* #undef HAVE_FUTIMES */ + +/* Define to 1 if you have the `futimesat' function. */ +/* #undef HAVE_FUTIMESAT */ + +/* Define to 1 if you have the header file. */ +#define HAVE_GETOPT_H 1 + +/* Define to 1 if you have the `getopt_long' function. */ +#define HAVE_GETOPT_LONG 1 + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* Define if you have the iconv() function and it works. */ +/* #undef HAVE_ICONV */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_IMMINTRIN_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if mbrtowc and mbstate_t are properly declared. */ +#define HAVE_MBRTOWC 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 to enable bt2 match finder. */ +#define HAVE_MF_BT2 1 + +/* Define to 1 to enable bt3 match finder. */ +#define HAVE_MF_BT3 1 + +/* Define to 1 to enable bt4 match finder. */ +#define HAVE_MF_BT4 1 + +/* Define to 1 to enable hc3 match finder. */ +#define HAVE_MF_HC3 1 + +/* Define to 1 to enable hc4 match finder. */ +#define HAVE_MF_HC4 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MINIX_SHA2_H */ + +/* Define to 1 if getopt.h declares extern int optreset. */ +#define HAVE_OPTRESET 1 + +/* Define to 1 if you have the `posix_fadvise' function. */ +#define HAVE_POSIX_FADVISE 1 + +/* Define to 1 if you have the `pthread_condattr_setclock' function. */ +#define HAVE_PTHREAD_CONDATTR_SETCLOCK 1 + +/* Have PTHREAD_PRIO_INHERIT. */ +/* #undef HAVE_PTHREAD_PRIO_INHERIT */ + +/* Define to 1 if you have the `SHA256Init' function. */ +/* #undef HAVE_SHA256INIT */ + +/* Define to 1 if the system has the type `SHA256_CTX'. */ +/* #undef HAVE_SHA256_CTX */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SHA256_H */ + +/* Define to 1 if you have the `SHA256_Init' function. */ +/* #undef HAVE_SHA256_INIT */ + +/* Define to 1 if the system has the type `SHA2_CTX'. */ +/* #undef HAVE_SHA2_CTX */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SHA2_H */ + +/* Define to 1 if optimizing for size. */ +/* #undef HAVE_SMALL */ + +/* Define to 1 if stdbool.h conforms to C99. */ +#define HAVE_STDBOOL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if `st_atimensec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_ATIMENSEC 1 + +/* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC */ + +/* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC */ + +/* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC */ + +/* Define to 1 if `st_uatime' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_UATIME */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_BYTEORDER_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_CAPSICUM_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_ENDIAN_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if the system has the type `uintptr_t'. */ +#define HAVE_UINTPTR_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the `utime' function. */ +/* #undef HAVE_UTIME */ + +/* Define to 1 if you have the `utimes' function. */ +/* #undef HAVE_UTIMES */ + +/* Define to 1 or 0, depending whether the compiler supports simple visibility + declarations. */ +#define HAVE_VISIBILITY 1 + +/* Define to 1 if you have the `wcwidth' function. */ +#define HAVE_WCWIDTH 1 + +/* Define to 1 if the system has the type `_Bool'. */ +#define HAVE__BOOL 1 + +/* Define to 1 if _mm_movemask_epi8 is available. */ +/* #undef HAVE__MM_MOVEMASK_EPI8 */ + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Define to 1 when using POSIX threads (pthreads). */ +#define MYTHREAD_POSIX 1 + +/* Define to 1 when using Windows Vista compatible threads. This uses features + that are not available on Windows XP. */ +/* #undef MYTHREAD_VISTA */ + +/* Define to 1 when using Windows 95 (and thus XP) compatible threads. This + avoids use of features that were added in Windows Vista. */ +/* #undef MYTHREAD_WIN95 */ + +/* Define to 1 to disable debugging code. */ +#define NDEBUG 1 + +/* Name of package */ +#define PACKAGE "xz" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "lasse.collin@tukaani.org" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "XZ Utils" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "XZ Utils 5.3.0alpha" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "xz" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "http://tukaani.org/xz/" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "5.3.0alpha" + +/* Define to necessary symbol if this constant uses a non-standard name on + your system. */ +/* #undef PTHREAD_CREATE_JOINABLE */ + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 4 + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if the number of available CPU cores can be detected with + cpuset(2). */ +/* #undef TUKLIB_CPUCORES_CPUSET */ + +/* Define to 1 if the number of available CPU cores can be detected with + pstat_getdynamic(). */ +/* #undef TUKLIB_CPUCORES_PSTAT_GETDYNAMIC */ + +/* Define to 1 if the number of available CPU cores can be detected with + sysconf(_SC_NPROCESSORS_ONLN) or sysconf(_SC_NPROC_ONLN). */ +#define TUKLIB_CPUCORES_SYSCONF 1 + +/* Define to 1 if the number of available CPU cores can be detected with + sysctl(). */ +/* #undef TUKLIB_CPUCORES_SYSCTL */ + +/* Define to 1 if the system supports fast unaligned access to 16-bit and + 32-bit integers. */ +/* #undef TUKLIB_FAST_UNALIGNED_ACCESS */ + +/* Define to 1 if the amount of physical memory can be detected with + _system_configuration.physmem. */ +/* #undef TUKLIB_PHYSMEM_AIX */ + +/* Define to 1 if the amount of physical memory can be detected with + getinvent_r(). */ +/* #undef TUKLIB_PHYSMEM_GETINVENT_R */ + +/* Define to 1 if the amount of physical memory can be detected with + getsysinfo(). */ +/* #undef TUKLIB_PHYSMEM_GETSYSINFO */ + +/* Define to 1 if the amount of physical memory can be detected with + pstat_getstatic(). */ +/* #undef TUKLIB_PHYSMEM_PSTAT_GETSTATIC */ + +/* Define to 1 if the amount of physical memory can be detected with + sysconf(_SC_PAGESIZE) and sysconf(_SC_PHYS_PAGES). */ +#define TUKLIB_PHYSMEM_SYSCONF 1 + +/* Define to 1 if the amount of physical memory can be detected with sysctl(). + */ +/* #undef TUKLIB_PHYSMEM_SYSCTL */ + +/* Define to 1 if the amount of physical memory can be detected with Linux + sysinfo(). */ +/* #undef TUKLIB_PHYSMEM_SYSINFO */ + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif + + +/* Version number of package */ +#define VERSION "5.3.0alpha" + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Enable large inode numbers on Mac OS X 10.5. */ +#ifndef _DARWIN_USE_64_BIT_INODE +# define _DARWIN_USE_64_BIT_INODE 1 +#endif + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to 1 if on MINIX. */ +/* #undef _MINIX */ + +/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ +/* #undef _POSIX_1_SOURCE */ + +/* Define to 1 if you need to in order for `stat' and other things to work. */ +/* #undef _POSIX_SOURCE */ + +/* Define for Solaris 2.5.1 so the uint32_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT32_T */ + +/* Define for Solaris 2.5.1 so the uint64_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT64_T */ + +/* Define for Solaris 2.5.1 so the uint8_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT8_T */ + +/* Define to rpl_ if the getopt replacement functions and variables should be + used. */ +/* #undef __GETOPT_PREFIX */ + +/* Define to the type of a signed integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int32_t */ + +/* Define to the type of a signed integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int64_t */ + +/* Define to the type of an unsigned integer type of width exactly 16 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint16_t */ + +/* Define to the type of an unsigned integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint32_t */ + +/* Define to the type of an unsigned integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint64_t */ + +/* Define to the type of an unsigned integer type of width exactly 8 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint8_t */ + +/* Define to the type of an unsigned integer type wide enough to hold a + pointer, if such a type exists, and if the system does not define it. */ +/* #undef uintptr_t */ diff --git a/jni/magiskboot/compress.c b/jni/magiskboot/compress.c index b82f09958..ff65025df 100644 --- a/jni/magiskboot/compress.c +++ b/jni/magiskboot/compress.c @@ -44,7 +44,7 @@ size_t gzip(int mode, int fd, const void *buf, size_t size) { LOGE("Unable to init zlib stream\n"); do { - strm.next_in = buf + pos; + strm.next_in = (void *) buf + pos; if (pos + CHUNK >= size) { strm.avail_in = size - pos; flush = Z_FINISH;