From 026543120788b90066db5d4387b2c53667d3e659 Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Sat, 28 Dec 2024 00:15:34 -0800 Subject: [PATCH 1/9] Switch to libkrw fork --- build_info/libkrw-dev.control | 4 ++-- build_info/libkrw0-tfp0.control | 4 ++-- build_info/libkrw0.control | 4 ++-- build_patch/libkrw/tfp0.patch | 25 ----------------------- makefiles/libkrw.mk | 35 +++++++++++++++++++++++++++------ 5 files changed, 35 insertions(+), 37 deletions(-) delete mode 100644 build_patch/libkrw/tfp0.patch diff --git a/build_info/libkrw-dev.control b/build_info/libkrw-dev.control index a5279f87da..56ca58ae13 100644 --- a/build_info/libkrw-dev.control +++ b/build_info/libkrw-dev.control @@ -1,10 +1,10 @@ Package: libkrw-dev -Author: Siguza +Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_LIBKRW_V@ Depends: libkrw0 (= @DEB_LIBKRW_V@) Section: Development Priority: optional -Homepage: https://github.com/Siguza/libkrw +Homepage: https://github.com/Cryptiiiic/libkrw Description: A kernel R/W API for jailbreaks (Development Files) diff --git a/build_info/libkrw0-tfp0.control b/build_info/libkrw0-tfp0.control index 180fa295ba..30971cc7ce 100644 --- a/build_info/libkrw0-tfp0.control +++ b/build_info/libkrw0-tfp0.control @@ -1,5 +1,5 @@ Package: libkrw0-tfp0 -Author: Siguza +Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_LIBKRW_V@ @@ -7,5 +7,5 @@ Provides: libkrw0-plugin Enhances: libkrw0 Section: Libraries Priority: standard -Homepage: https://github.com/Siguza/libkrw +Homepage: https://github.com/Cryptiiiic/libkrw Description: Plugin for libkrw that interfaces with tfp0/hgsp4 (Shared Library) diff --git a/build_info/libkrw0.control b/build_info/libkrw0.control index 252dc6bf1b..c4f3330930 100644 --- a/build_info/libkrw0.control +++ b/build_info/libkrw0.control @@ -1,5 +1,5 @@ Package: libkrw0 -Author: Siguza +Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_LIBKRW_V@ @@ -7,5 +7,5 @@ Provides: libkrw (= @DEB_LIBKRW_V@) Depends: libkrw0-plugin Section: Libraries Priority: standard -Homepage: https://github.com/Siguza/libkrw +Homepage: https://github.com/Cryptiiiic/libkrw Description: A kernel R/W API for jailbreaks (Shared Library) diff --git a/build_patch/libkrw/tfp0.patch b/build_patch/libkrw/tfp0.patch deleted file mode 100644 index 23d074cd0f..0000000000 --- a/build_patch/libkrw/tfp0.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- a/src/libkrw.c 2024-04-20 14:46:12.796173476 -0700 -+++ b/src/libkrw.c 2024-04-20 18:01:14.500961452 -0700 -@@ -160,3 +160,8 @@ - if (krw_handlers.physwrite == NULL) return ENOTSUP; - return krw_handlers.physwrite(from, to, len, granule); - } -+ -+__attribute__((visibility("hidden"))) -+int libkrw_initialization(krw_handlers_t handlers) { -+ return EPROTONOSUPPORT; -+} - ---- a/src/libkrw_tfp0.c 2021-11-01 15:47:05.000000000 -0700 -+++ b/src/libkrw_tfp0.c 2024-04-20 17:59:39.170186064 -0700 -@@ -204,8 +204,8 @@ - return EDEVERR; - } - --__attribute__((visibility("hidden"))) --int libkrw_initialization(krw_handlers_t handlers) { -+__attribute__((used)) -+int krw_initializer(krw_handlers_t handlers) { - // Make sure structure version is not lower than what we compiled with - if (handlers->version < LIBKRW_HANDLERS_VERSION) { - return EPROTONOSUPPORT; diff --git a/makefiles/libkrw.mk b/makefiles/libkrw.mk index 79accea119..643990fece 100644 --- a/makefiles/libkrw.mk +++ b/makefiles/libkrw.mk @@ -6,17 +6,20 @@ ifeq (,$(findstring darwin,$(MEMO_TARGET))) ifeq ($(shell [ "$(MEMO_CFVER)" -ge 1700 ] && echo 1),1) STRAPPROJECTS += libkrw -LIBKRW_VERSION := 1.1.1 -DEB_LIBKRW_V ?= $(LIBKRW_VERSION)-2 +LIBKRW_VERSION := 1.1.2 +LIBROOT_COMMIT := 102348f5e9360ad1f509ae4958bd3ca686347ee8 +DEB_LIBKRW_V ?= $(LIBKRW_VERSION) LIBKRW_SOVERSION := 0 libkrw-setup: setup - $(call GITHUB_ARCHIVE,Siguza,libkrw,$(LIBKRW_VERSION),$(LIBKRW_VERSION)) + $(call GITHUB_ARCHIVE,Cryptiiiic,libkrw,$(LIBKRW_VERSION),v$(LIBKRW_VERSION)) $(call EXTRACT_TAR,libkrw-$(LIBKRW_VERSION).tar.gz,libkrw-$(LIBKRW_VERSION),libkrw) - $(call DO_PATCH,libkrw,libkrw,-p1) + $(call GITHUB_ARCHIVE,opa334,libroot,$(LIBROOT_COMMIT),$(LIBROOT_COMMIT),libroot) + $(call EXTRACT_TAR,libroot-$(LIBROOT_COMMIT).tar.gz,libroot-$(LIBROOT_COMMIT),libroot) + cp -a $(BUILD_WORK)/libroot $(BUILD_WORK)/libkrw/external + rm -rf $(BUILD_WORK)/libroot mkdir -p $(BUILD_STAGE)/libkrw/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include,lib/libkrw} - sed -i 's|/usr/lib|$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib|g' $(BUILD_WORK)/libkrw/src/libkrw.c ifneq ($(wildcard $(BUILD_WORK)/libkrw/.build_complete),) libkrw: @@ -25,15 +28,35 @@ else libkrw: libkrw-setup mkdir -p $(BUILD_WORK)/libkrw/src/.lib/ + # libroot.o + if [ ! -z "$(findstring rootless,$(MEMO_TARGET))" ]; then \ + $(CC) $(CFLAGS) \ + -I$(BUILD_WORK)/libkrw/external/libroot/src \ + -c -o $(BUILD_WORK)/libkrw/src/.lib/libroot.o \ + -fobjc-arc \ + -DIPHONEOS_ARM64 \ + $(BUILD_WORK)/libkrw/external/libroot/src/dyn.c; \ + else \ + $(CC) $(CFLAGS) \ + -I$(BUILD_WORK)/libkrw/external/libroot/src \ + -c -o $(BUILD_WORK)/libkrw/src/.lib/libroot.o \ + -fobjc-arc \ + -DTARGET=libkrw \ + $(BUILD_WORK)/libkrw/external/libroot/src/dyn.c; \ + fi # libkrw.o $(CC) $(CFLAGS) \ -I$(BUILD_WORK)/libkrw/include \ + -I$(BUILD_WORK)/libkrw/external/libroot/src \ + -DTARGET="\"libkrw\"" \ -c -o $(BUILD_WORK)/libkrw/src/.lib/libkrw.o \ $(BUILD_WORK)/libkrw/src/libkrw.c # libkrw_tfp0.o $(CC) $(CFLAGS) \ -I$(BUILD_WORK)/libkrw/include \ + -I$(BUILD_WORK)/libkrw/external/libroot/src \ + -DTARGET="\"libkrw\"" \ -c -o $(BUILD_WORK)/libkrw/src/.lib/libkrw_tfp0.o \ $(BUILD_WORK)/libkrw/src/libkrw_tfp0.c @@ -42,7 +65,7 @@ libkrw: libkrw-setup -I$(BUILD_WORK)/libkrw/include \ -install_name "$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libkrw.$(LIBKRW_SOVERSION).dylib" \ -o $(BUILD_STAGE)/libkrw/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libkrw.$(LIBKRW_SOVERSION).dylib \ - $(BUILD_WORK)/libkrw/src/.lib/libkrw.o \ + $(BUILD_WORK)/libkrw/src/.lib/{libroot,libkrw}.o \ $(LDFLAGS) # libkrw-tfp0.dylib From a342c0c6183ee1c3488efb453c7e3c191330b4cc Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Sat, 28 Dec 2024 03:49:45 -0800 Subject: [PATCH 2/9] Add x8A4 --- build_info/libx8A4-dev.control | 10 +++ build_info/libx8A4.control | 11 +++ build_info/x8A4.control | 11 +++ build_misc/entitlements/x8A4.xml | 20 +++++ build_patch/choma/choma.patch | 121 +++++++++++++++++++++++++++++++ makefiles/x8A4.mk | 94 ++++++++++++++++++++++++ 6 files changed, 267 insertions(+) create mode 100644 build_info/libx8A4-dev.control create mode 100644 build_info/libx8A4.control create mode 100644 build_info/x8A4.control create mode 100644 build_misc/entitlements/x8A4.xml create mode 100644 build_patch/choma/choma.patch create mode 100644 makefiles/x8A4.mk diff --git a/build_info/libx8A4-dev.control b/build_info/libx8A4-dev.control new file mode 100644 index 0000000000..440268ae54 --- /dev/null +++ b/build_info/libx8A4-dev.control @@ -0,0 +1,10 @@ +Package: libx8A4-dev +Author: Cryptiiiic +Maintainer: @DEB_MAINTAINER@ +Architecture: @DEB_ARCH@ +Version: @DEB_X8A4_V@ +Depends: libx8A4 (= @DEB_X8A4_V@) +Section: Development +Priority: optional +Homepage: https://github.com/Cryptiiiic/libkrw +Description: An all-in-one tool for firmware nonces, seeds, and downgrade support (Development Files) diff --git a/build_info/libx8A4.control b/build_info/libx8A4.control new file mode 100644 index 0000000000..d72a455f83 --- /dev/null +++ b/build_info/libx8A4.control @@ -0,0 +1,11 @@ +Package: libx8A4 +Author: Cryptiiiic +Maintainer: @DEB_MAINTAINER@ +Architecture: @DEB_ARCH@ +Version: @DEB_X8A4_V@ +Provides: libx8A4 (= @DEB_X8A4_V@) +Depends: libkrw +Section: Libraries +Priority: standard +Homepage: https://github.com/Cryptiiiic/x8A4 +Description: An all-in-one tool for firmware nonces, seeds, and downgrade support (Shared Library) diff --git a/build_info/x8A4.control b/build_info/x8A4.control new file mode 100644 index 0000000000..a6873d8931 --- /dev/null +++ b/build_info/x8A4.control @@ -0,0 +1,11 @@ +Package: x8A4 +Author: Cryptiiiic +Maintainer: @DEB_MAINTAINER@ +Architecture: @DEB_ARCH@ +Version: @DEB_X8A4_V@ +Depends: libx8A4 (= @DEB_X8A4_V@) +Enhances: dimentio +Section: Utilities +Priority: optional +Homepage: https://github.com/Cryptiiiic/libkrw +Description: An all-in-one tool for firmware nonces, seeds, and downgrade support diff --git a/build_misc/entitlements/x8A4.xml b/build_misc/entitlements/x8A4.xml new file mode 100644 index 0000000000..977cf4d33d --- /dev/null +++ b/build_misc/entitlements/x8A4.xml @@ -0,0 +1,20 @@ + + + + + get-task-allow + + task_for_pid-allow + + platform-application + + com.apple.private.kernel.get-kext-info + + com.apple.private.security.no-container + + com.apple.security.iokit-user-client-class + AppleMobileApNonceUserClient + com.apple.security.exception.iokit-user-client-class + IOSurfaceRootUserClient + + diff --git a/build_patch/choma/choma.patch b/build_patch/choma/choma.patch new file mode 100644 index 0000000000..58457fd03c --- /dev/null +++ b/build_patch/choma/choma.patch @@ -0,0 +1,121 @@ +diff --git a/src/arm64.c b/src/arm64.c +index 2b07da0..99420f5 100644 +--- a/src/arm64.c ++++ b/src/arm64.c +@@ -442,6 +442,90 @@ int arm64_dec_add_imm(uint32_t inst, arm64_register *destinationRegOut, arm64_re + return 0; + } + ++int arm64_gen_sub_imm(arm64_register destinationReg, arm64_register sourceReg, optional_uint64_t optImm, optional_bool optS, uint32_t *bytesOut, uint32_t *maskOut) { ++ if (ARM64_REG_IS_ANY_VECTOR(destinationReg)) return -1; ++ if (ARM64_REG_IS_ANY_VECTOR(sourceReg)) return -1; ++ ++ if (!ARM64_REG_IS_ANY(destinationReg) && !ARM64_REG_IS_ANY(sourceReg)) { ++ // if both regs are set and have a mismatching width, abort ++ if (ARM64_REG_IS_W(destinationReg) != ARM64_REG_IS_W(sourceReg)) return -1; ++ } ++ ++ uint32_t inst = 0x51000000; ++ uint32_t mask = 0x7f800000; ++ if(OPT_BOOL_IS_SET(optS)) { ++ bool s = OPT_BOOL_GET_VAL(optS); ++ if(s) { ++ inst = 0x71000000; ++ mask |= (1 << 29); ++ inst |= (1 << 29); ++ } ++ } ++ ++ // if one is set and 32 bit, include 32 bit in mask and set it in inst ++ if (!ARM64_REG_IS_ANY(destinationReg)) { ++ mask |= (1 << 31); ++ inst |= ((uint32_t)(ARM64_REG_IS_X(destinationReg)) << 31); ++ } ++ else if (!ARM64_REG_IS_ANY(sourceReg)) { ++ mask |= (1 << 31); ++ inst |= ((uint32_t)(ARM64_REG_IS_X(sourceReg)) << 31); ++ } ++ ++ if (!ARM64_REG_IS_ANY(destinationReg)) { ++ mask |= 0x1F; ++ inst |= (uint32_t)(ARM64_REG_GET_NUM(destinationReg)); ++ } ++ if (!ARM64_REG_IS_ANY(sourceReg)) { ++ mask |= (0x1F << 5); ++ inst |= ((uint32_t)(ARM64_REG_GET_NUM(destinationReg)) << 5); ++ } ++ ++ if (OPT_UINT64_IS_SET(optImm)) { ++ uint64_t imm = OPT_UINT64_GET_VAL(optImm); ++ if (imm & ~0xFFF) return -1; ++ mask |= (0xFFF << 10); ++ inst |= (imm << 10); ++ } ++ ++ if (bytesOut) *bytesOut = inst; ++ if (maskOut) *maskOut = mask; ++ return 0; ++} ++ ++int arm64_dec_sub_imm(uint32_t inst, arm64_register *destinationRegOut, arm64_register *sourceRegOut, uint16_t *immOut, bool *sOut) { ++ if ((inst & 0x7f800000) != 0x51000000) { ++ if ((inst & 0x7f800000) != 0x71000000) { ++ return -1; ++ } ++ } ++ bool is64 = (inst & 0x80000000); ++ bool isS = (inst & 0x20000000); ++ bool shift = (inst & 0x400000); ++ ++ if (destinationRegOut) { ++ *destinationRegOut = ARM64_REG(is64 ? ARM64_REG_TYPE_X : ARM64_REG_TYPE_W, inst & 0x1F); ++ } ++ if (sourceRegOut) { ++ *sourceRegOut = ARM64_REG(is64 ? ARM64_REG_TYPE_X : ARM64_REG_TYPE_W, (inst >> 5) & 0x1F); ++ } ++ ++ if (immOut) { ++ uint16_t imm = ((inst >> 10) & 0xFFF); ++ if (shift) { ++ imm = (imm << 12); ++ } ++ *immOut = imm; ++ } ++ ++ if (sOut) { ++ *sOut = isS; ++ } ++ ++ return 0; ++} ++ ++ + static int _arm64_gen_str_ldr_imm(uint32_t inst, uint32_t mask, char type, arm64_ldr_str_type instType, arm64_register sourceDestinationReg, arm64_register addrReg, optional_uint64_t optImm, uint32_t *bytesOut, uint32_t *maskOut) + { + if (ARM64_REG_IS_ANY_VECTOR(addrReg)) return -1; +diff --git a/src/arm64.h b/src/arm64.h +index 6cc1329..5ad903b 100644 +--- a/src/arm64.h ++++ b/src/arm64.h +@@ -85,6 +85,8 @@ int arm64_gen_mov_reg(arm64_register destinationReg, arm64_register sourceReg, u + int arm64_dec_mov_reg(uint32_t inst, arm64_register *destinationRegOut, arm64_register *sourceRegOut); + int arm64_gen_add_imm(arm64_register destinationReg, arm64_register sourceReg, optional_uint64_t optImm, uint32_t *bytesOut, uint32_t *maskOut); + int arm64_dec_add_imm(uint32_t inst, arm64_register *destinationRegOut, arm64_register *sourceRegOut, uint16_t *immOut); ++int arm64_gen_sub_imm(arm64_register destinationReg, arm64_register sourceReg, optional_uint64_t optImm, optional_bool optS, uint32_t *bytesOut, uint32_t *maskOut); ++int arm64_dec_sub_imm(uint32_t inst, arm64_register *destinationRegOut, arm64_register *sourceRegOut, uint16_t *immOut, bool *sOut); + int arm64_gen_ldr_imm(char type, arm64_ldr_str_type instType, arm64_register destinationReg, arm64_register addrReg, optional_uint64_t optImm, uint32_t *bytesOut, uint32_t *maskOut); + int arm64_dec_ldr_imm(uint32_t inst, arm64_register *destinationReg, arm64_register *addrReg, uint64_t *immOut, char *typeOut, arm64_ldr_str_type *instTypeOut); + int arm64_gen_ldrs_imm(char type, arm64_ldr_str_type instType, arm64_register destinationReg, arm64_register addrReg, optional_uint64_t optImm, uint32_t *bytesOut, uint32_t *maskOut); + +diff --git a/src/MachOByteOrder.h b/src/MachOByteOrder.h +index 47f6f7d..56e28ea 100644 +--- a/src/MachOByteOrder.h ++++ b/src/MachOByteOrder.h +@@ -3,6 +3,7 @@ + + #include + #include ++#include + + // 8-bit integers needed for CodeDirectory + #define BIG_TO_HOST(n) _Generic((n), \ diff --git a/makefiles/x8A4.mk b/makefiles/x8A4.mk new file mode 100644 index 0000000000..6104a1ac08 --- /dev/null +++ b/makefiles/x8A4.mk @@ -0,0 +1,94 @@ +ifneq ($(PROCURSUS),1) +$(error Use the main Makefile) +endif + +ifeq (,$(findstring darwin,$(MEMO_TARGET))) +ifeq ($(shell [ "$(MEMO_CFVER)" -ge 1800 ] && echo 1),1) + +SUBPROJECTS += x8A4 +X8A4_VERSION := 1.0.0 +CHOMA_COMMIT := 2fcc1fc51f6eb778756ccdee3c809bf83a767996 +XPF_COMMIT := 19798b65bd7eb3014261a550e666335aff439156 +DEB_X8A4_V ?= $(X8A4_VERSION) + +LIBX8A4_SOVERSION := 1 + +x8A4-setup: setup + $(call GITHUB_ARCHIVE,Cryptiiiic,x8A4,$(X8A4_VERSION),v$(X8A4_VERSION)) + $(call EXTRACT_TAR,x8A4-$(X8A4_VERSION).tar.gz,x8A4-$(X8A4_VERSION),x8A4) + rm -rf $(BUILD_WORK)/x8A4/Lib/{ChOma,XPF} $(BUILD_WORK)/x8A4/Lib/lib{choma,XPF}.a + $(call GITHUB_ARCHIVE,opa334,ChOma,$(CHOMA_COMMIT),$(CHOMA_COMMIT),ChOma) + $(call GITHUB_ARCHIVE,opa334,XPF,$(XPF_COMMIT),$(XPF_COMMIT),XPF) + $(call EXTRACT_TAR,ChOma-$(CHOMA_COMMIT).tar.gz,ChOma-$(CHOMA_COMMIT),x8A4/Lib/ChOma) + $(call EXTRACT_TAR,XPF-$(XPF_COMMIT).tar.gz,XPF-$(XPF_COMMIT),x8A4/Lib/XPF) + $(call DO_PATCH,choma,x8A4/Lib/ChOma,-p1) + rm -rf $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/include/choma/* $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/lib/libchoma.* + rm -rf $(BUILD_WORK)/x8A4/Include/choma/* $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/lib/libchoma.* + cp -a $(BUILD_WORK)/x8A4/Lib/ChOma/src/*.h $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/include/choma/ + cp -a $(BUILD_WORK)/x8A4/Lib/ChOma/src/*.h $(BUILD_WORK)/x8A4/Include/choma/ + mkdir -p $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include,lib,bin} + + +ifneq ($(wildcard $(BUILD_WORK)/x8A4/.build_complete),) +x8A4: + @echo "Using previously built x8A4." +else +x8A4: x8A4-setup + # libchoma.a + cd $(BUILD_WORK)/x8A4/Lib/ChOma && \ + rm -rf $(BUILD_WORK)/x8A4/Lib/libchoma.a src/*.o; \ + for file in src/*.c; do \ + $(CC) -Isrc $(CFLAGS) -c -o $$file.o $$file; \ + done; \ + ar r $(BUILD_WORK)/x8A4/Lib/libchoma.a src/*o; \ + # libxpf.a + cd $(BUILD_WORK)/x8A4/Lib/XPF && \ + rm -rf $(BUILD_WORK)/x8A4/Lib/libxpf.a src/*.o; \ + for file in src/*.c; do \ + $(CC) -Iexternal/ios/include $(CFLAGS) -c -o $$file.o $$file; \ + done; \ + ar r $(BUILD_WORK)/x8A4/Lib/libxpf.a src/*o; \ + # x8A4 + cd $(BUILD_WORK)/x8A4 && cmake . \ + $(DEFAULT_CMAKE_FLAGS) \ + -DRELEASE=1 + +$(MAKE) -C $(BUILD_WORK)/x8A4 + cp -a $(BUILD_WORK)/x8A4/libx8A4.dylib $(BUILD_WORK)/x8A4/libx8A4.$(LIBX8A4_SOVERSION).dylib $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/ + cp -a $(BUILD_WORK)/x8A4/x8A4_CLI $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/x8A4 + cp -a $(BUILD_WORK)/x8A4/Include/x8A4 $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include + $(call AFTER_BUILD,copy) +endif + +x8A4-package: x8A4-stage + # x8A4.mk Package Structure + rm -rf $(BUILD_DIST)/libx8A4{,-dev} $(BUILD_DIST)/x8A4 + mkdir -p $(BUILD_DIST)/libx8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ + $(BUILD_DIST)/libx8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ + $(BUILD_DIST)/libx8A4-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{lib,include} \ + $(BUILD_DIST)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin + + # x8A4.mk Prep libx8A4 + cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libx8A4.$(LIBX8A4_SOVERSION).dylib $(BUILD_DIST)/libx8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib + + # libkrw.mk Prep libkrw-dev + cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libx8A4.dylib $(BUILD_DIST)/libx8A4-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib + cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/x8A4 $(BUILD_DIST)/libx8A4-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include + + # x8A4.mk Prep x8A4 + cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/x8A4 $(BUILD_DIST)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin + + # libkrw.mk Sign + $(call SIGN,libx8A4,general.xml) + $(call SIGN,x8A4,x8A4.xml) + + # libkrw.mk Make .debs + $(call PACK,libx8A4,DEB_X8A4_V) + $(call PACK,libx8A4-dev,DEB_X8A4_V) + $(call PACK,x8A4,DEB_X8A4_V) + + # libkrw.mk Build cleanup + rm -rf $(BUILD_DIST)/libx8A4{,-dev} $(BUILD_DIST)/x8A4 + +.PHONY: libkrw libkrw-package +endif +endif From 342b4a6b43be6b65a997a083468a2f285ade84bc Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Sat, 28 Dec 2024 03:56:13 -0800 Subject: [PATCH 3/9] Fix homepage --- build_info/libx8A4-dev.control | 2 +- build_info/x8A4.control | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build_info/libx8A4-dev.control b/build_info/libx8A4-dev.control index 440268ae54..5c594de279 100644 --- a/build_info/libx8A4-dev.control +++ b/build_info/libx8A4-dev.control @@ -6,5 +6,5 @@ Version: @DEB_X8A4_V@ Depends: libx8A4 (= @DEB_X8A4_V@) Section: Development Priority: optional -Homepage: https://github.com/Cryptiiiic/libkrw +Homepage: https://github.com/Cryptiiiic/x8A4 Description: An all-in-one tool for firmware nonces, seeds, and downgrade support (Development Files) diff --git a/build_info/x8A4.control b/build_info/x8A4.control index a6873d8931..2f4f85862d 100644 --- a/build_info/x8A4.control +++ b/build_info/x8A4.control @@ -7,5 +7,5 @@ Depends: libx8A4 (= @DEB_X8A4_V@) Enhances: dimentio Section: Utilities Priority: optional -Homepage: https://github.com/Cryptiiiic/libkrw +Homepage: https://github.com/Cryptiiiic/x8A4 Description: An all-in-one tool for firmware nonces, seeds, and downgrade support From 5c7a1d44ef2353479bd9b339d4441c03ea93450b Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Sat, 28 Dec 2024 03:57:55 -0800 Subject: [PATCH 4/9] Fix phony --- makefiles/x8A4.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makefiles/x8A4.mk b/makefiles/x8A4.mk index 6104a1ac08..f7b65f74a4 100644 --- a/makefiles/x8A4.mk +++ b/makefiles/x8A4.mk @@ -89,6 +89,6 @@ x8A4-package: x8A4-stage # libkrw.mk Build cleanup rm -rf $(BUILD_DIST)/libx8A4{,-dev} $(BUILD_DIST)/x8A4 -.PHONY: libkrw libkrw-package +.PHONY: x8A4 x8A4-package endif endif From 7a598d156fcedbcb8ea8d9172d705fc0bb7f9d5d Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Sat, 28 Dec 2024 04:32:50 -0800 Subject: [PATCH 5/9] Rename sover --- .../{libx8A4.control => libx8A4-1.control} | 4 ++-- build_info/libx8A4-dev.control | 2 +- build_info/x8A4.control | 2 +- makefiles/x8A4.mk | 19 ++++++++++--------- 4 files changed, 14 insertions(+), 13 deletions(-) rename build_info/{libx8A4.control => libx8A4-1.control} (83%) diff --git a/build_info/libx8A4.control b/build_info/libx8A4-1.control similarity index 83% rename from build_info/libx8A4.control rename to build_info/libx8A4-1.control index d72a455f83..43a7d1ff77 100644 --- a/build_info/libx8A4.control +++ b/build_info/libx8A4-1.control @@ -1,9 +1,9 @@ -Package: libx8A4 +Package: libx8A4-1 Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_X8A4_V@ -Provides: libx8A4 (= @DEB_X8A4_V@) +Provides: libx8A4-1 (= @DEB_X8A4_V@) Depends: libkrw Section: Libraries Priority: standard diff --git a/build_info/libx8A4-dev.control b/build_info/libx8A4-dev.control index 5c594de279..f41ce3d63f 100644 --- a/build_info/libx8A4-dev.control +++ b/build_info/libx8A4-dev.control @@ -3,7 +3,7 @@ Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_X8A4_V@ -Depends: libx8A4 (= @DEB_X8A4_V@) +Depends: libx8A4-1 (= @DEB_X8A4_V@) Section: Development Priority: optional Homepage: https://github.com/Cryptiiiic/x8A4 diff --git a/build_info/x8A4.control b/build_info/x8A4.control index 2f4f85862d..c8e064dbf6 100644 --- a/build_info/x8A4.control +++ b/build_info/x8A4.control @@ -3,7 +3,7 @@ Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_X8A4_V@ -Depends: libx8A4 (= @DEB_X8A4_V@) +Depends: libx8A4-1 (= @DEB_X8A4_V@) Enhances: dimentio Section: Utilities Priority: optional diff --git a/makefiles/x8A4.mk b/makefiles/x8A4.mk index f7b65f74a4..df2ab40b9d 100644 --- a/makefiles/x8A4.mk +++ b/makefiles/x8A4.mk @@ -14,8 +14,9 @@ DEB_X8A4_V ?= $(X8A4_VERSION) LIBX8A4_SOVERSION := 1 x8A4-setup: setup - $(call GITHUB_ARCHIVE,Cryptiiiic,x8A4,$(X8A4_VERSION),v$(X8A4_VERSION)) - $(call EXTRACT_TAR,x8A4-$(X8A4_VERSION).tar.gz,x8A4-$(X8A4_VERSION),x8A4) +# $(call GITHUB_ARCHIVE,Cryptiiiic,x8A4,$(X8A4_VERSION),v$(X8A4_VERSION)) +# $(call EXTRACT_TAR,x8A4-$(X8A4_VERSION).tar.gz,x8A4-$(X8A4_VERSION),x8A4) + cp -a ~/source/x8A4 $(BUILD_WORK)/ rm -rf $(BUILD_WORK)/x8A4/Lib/{ChOma,XPF} $(BUILD_WORK)/x8A4/Lib/lib{choma,XPF}.a $(call GITHUB_ARCHIVE,opa334,ChOma,$(CHOMA_COMMIT),$(CHOMA_COMMIT),ChOma) $(call GITHUB_ARCHIVE,opa334,XPF,$(XPF_COMMIT),$(XPF_COMMIT),XPF) @@ -61,14 +62,14 @@ endif x8A4-package: x8A4-stage # x8A4.mk Package Structure - rm -rf $(BUILD_DIST)/libx8A4{,-dev} $(BUILD_DIST)/x8A4 - mkdir -p $(BUILD_DIST)/libx8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ - $(BUILD_DIST)/libx8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ + rm -rf $(BUILD_DIST)/libx8A4{-$(LIBX8A4_SOVERSION),-dev} $(BUILD_DIST)/x8A4 + mkdir -p $(BUILD_DIST)/libx8A4-$(LIBX8A4_SOVERSION)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ + $(BUILD_DIST)/libx8A4-$(LIBX8A4_SOVERSION)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ $(BUILD_DIST)/libx8A4-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{lib,include} \ $(BUILD_DIST)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin # x8A4.mk Prep libx8A4 - cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libx8A4.$(LIBX8A4_SOVERSION).dylib $(BUILD_DIST)/libx8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib + cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libx8A4.$(LIBX8A4_SOVERSION).dylib $(BUILD_DIST)/libx8A4-$(LIBX8A4_SOVERSION)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib # libkrw.mk Prep libkrw-dev cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libx8A4.dylib $(BUILD_DIST)/libx8A4-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib @@ -78,16 +79,16 @@ x8A4-package: x8A4-stage cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/x8A4 $(BUILD_DIST)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin # libkrw.mk Sign - $(call SIGN,libx8A4,general.xml) + $(call SIGN,libx8A4-$(LIBX8A4_SOVERSION),general.xml) $(call SIGN,x8A4,x8A4.xml) # libkrw.mk Make .debs - $(call PACK,libx8A4,DEB_X8A4_V) + $(call PACK,libx8A4-$(LIBX8A4_SOVERSION),DEB_X8A4_V) $(call PACK,libx8A4-dev,DEB_X8A4_V) $(call PACK,x8A4,DEB_X8A4_V) # libkrw.mk Build cleanup - rm -rf $(BUILD_DIST)/libx8A4{,-dev} $(BUILD_DIST)/x8A4 + rm -rf $(BUILD_DIST)/libx8A4{-$(LIBX8A4_SOVERSION),-dev} $(BUILD_DIST)/x8A4 .PHONY: x8A4 x8A4-package endif From 6e473671728e4de868f75a1adeee8e7299a7b75a Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Sat, 28 Dec 2024 04:43:02 -0800 Subject: [PATCH 6/9] Fix include --- build_patch/xpf/xpf.patch | 35 +++++++++++++++++++++++++++++++++++ makefiles/x8A4.mk | 9 +++++---- 2 files changed, 40 insertions(+), 4 deletions(-) create mode 100644 build_patch/xpf/xpf.patch diff --git a/build_patch/xpf/xpf.patch b/build_patch/xpf/xpf.patch new file mode 100644 index 0000000000..4facd28e7c --- /dev/null +++ b/build_patch/xpf/xpf.patch @@ -0,0 +1,35 @@ +diff --git a/.gitignore b/.gitignore +index 5793cf9..3e81e77 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -4,3 +4,5 @@ xpf_test_ios + libxpf.dylib + libxpf_macos.dylib + /kernels ++ ++.idea +\ No newline at end of file +diff --git a/src/xpf.c b/src/xpf.c +index c072aaf..f5ca33f 100644 +--- a/src/xpf.c ++++ b/src/xpf.c +@@ -551,6 +551,7 @@ void xpf_stop(void) + if (gXPF.kernelPrelinkTextSection) pfsec_free(gXPF.kernelPrelinkTextSection); + if (gXPF.kernelBootdataInit) pfsec_free(gXPF.kernelBootdataInit); + if (gXPF.kernelPLKTextSection) pfsec_free(gXPF.kernelPLKTextSection); ++ if (gXPF.kernelPLKDataConstSection) pfsec_free(gXPF.kernelPLKDataConstSection); + if (gXPF.kernelInfoPlistSection) pfsec_free(gXPF.kernelInfoPlistSection); + if (gXPF.kernelContainer) fat_free(gXPF.kernelContainer); + +diff --git a/src/xpf.h b/src/xpf.h +index fddae9c..30130e0 100644 +--- a/src/xpf.h ++++ b/src/xpf.h +@@ -64,6 +64,7 @@ typedef struct s_XPF { + PFSection *kernelOSLogSection; + PFSection *kernelPrelinkTextSection; + PFSection *kernelPLKTextSection; ++ PFSection *kernelPLKDataConstSection; + PFSection *kernelBootdataInit; + PFSection *kernelAMFITextSection; + PFSection *kernelAMFIStringSection; diff --git a/makefiles/x8A4.mk b/makefiles/x8A4.mk index df2ab40b9d..40e3e59ee5 100644 --- a/makefiles/x8A4.mk +++ b/makefiles/x8A4.mk @@ -14,19 +14,20 @@ DEB_X8A4_V ?= $(X8A4_VERSION) LIBX8A4_SOVERSION := 1 x8A4-setup: setup -# $(call GITHUB_ARCHIVE,Cryptiiiic,x8A4,$(X8A4_VERSION),v$(X8A4_VERSION)) -# $(call EXTRACT_TAR,x8A4-$(X8A4_VERSION).tar.gz,x8A4-$(X8A4_VERSION),x8A4) - cp -a ~/source/x8A4 $(BUILD_WORK)/ + $(call GITHUB_ARCHIVE,Cryptiiiic,x8A4,$(X8A4_VERSION),v$(X8A4_VERSION)) + $(call EXTRACT_TAR,x8A4-$(X8A4_VERSION).tar.gz,x8A4-$(X8A4_VERSION),x8A4) rm -rf $(BUILD_WORK)/x8A4/Lib/{ChOma,XPF} $(BUILD_WORK)/x8A4/Lib/lib{choma,XPF}.a $(call GITHUB_ARCHIVE,opa334,ChOma,$(CHOMA_COMMIT),$(CHOMA_COMMIT),ChOma) $(call GITHUB_ARCHIVE,opa334,XPF,$(XPF_COMMIT),$(XPF_COMMIT),XPF) $(call EXTRACT_TAR,ChOma-$(CHOMA_COMMIT).tar.gz,ChOma-$(CHOMA_COMMIT),x8A4/Lib/ChOma) $(call EXTRACT_TAR,XPF-$(XPF_COMMIT).tar.gz,XPF-$(XPF_COMMIT),x8A4/Lib/XPF) $(call DO_PATCH,choma,x8A4/Lib/ChOma,-p1) + $(call DO_PATCH,xpf,x8A4/Lib/XPF,-p1) rm -rf $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/include/choma/* $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/lib/libchoma.* - rm -rf $(BUILD_WORK)/x8A4/Include/choma/* $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/lib/libchoma.* + rm -rf $(BUILD_WORK)/x8A4/Include/XPF/* $(BUILD_WORK)/x8A4/Include/choma/* $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/lib/libchoma.* cp -a $(BUILD_WORK)/x8A4/Lib/ChOma/src/*.h $(BUILD_WORK)/x8A4/Lib/XPF/external/ios/include/choma/ cp -a $(BUILD_WORK)/x8A4/Lib/ChOma/src/*.h $(BUILD_WORK)/x8A4/Include/choma/ + cp -a $(BUILD_WORK)/x8A4/Lib/XPF/src/*.h $(BUILD_WORK)/x8A4/Include/XPF mkdir -p $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include,lib,bin} From 78b35cd9ee18122686675a35c0e1f5091bbeaeb6 Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Sat, 28 Dec 2024 05:18:08 -0800 Subject: [PATCH 7/9] Fixes --- .../{libx8A4-1.control => libx8a4-1.control} | 6 +++--- .../{libx8A4-dev.control => libx8a4-dev.control} | 4 ++-- build_info/{x8A4.control => x8a4.control} | 5 +++-- build_misc/entitlements/x8A4.xml | 7 ++++--- makefiles/libkrw.mk | 2 -- makefiles/x8A4.mk | 14 +++++++------- 6 files changed, 19 insertions(+), 19 deletions(-) rename build_info/{libx8A4-1.control => libx8a4-1.control} (79%) rename build_info/{libx8A4-dev.control => libx8a4-dev.control} (83%) rename build_info/{x8A4.control => x8a4.control} (82%) diff --git a/build_info/libx8A4-1.control b/build_info/libx8a4-1.control similarity index 79% rename from build_info/libx8A4-1.control rename to build_info/libx8a4-1.control index 43a7d1ff77..918e02b497 100644 --- a/build_info/libx8A4-1.control +++ b/build_info/libx8a4-1.control @@ -1,10 +1,10 @@ -Package: libx8A4-1 +Package: libx8a4-1 Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_X8A4_V@ -Provides: libx8A4-1 (= @DEB_X8A4_V@) -Depends: libkrw +Provides: libx8a4-1 (= @DEB_X8A4_V@) +Depends: libkrw0 Section: Libraries Priority: standard Homepage: https://github.com/Cryptiiiic/x8A4 diff --git a/build_info/libx8A4-dev.control b/build_info/libx8a4-dev.control similarity index 83% rename from build_info/libx8A4-dev.control rename to build_info/libx8a4-dev.control index f41ce3d63f..225fab4324 100644 --- a/build_info/libx8A4-dev.control +++ b/build_info/libx8a4-dev.control @@ -1,9 +1,9 @@ -Package: libx8A4-dev +Package: libx8a4-dev Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_X8A4_V@ -Depends: libx8A4-1 (= @DEB_X8A4_V@) +Depends: libx8a4-1 (= @DEB_X8A4_V@) Section: Development Priority: optional Homepage: https://github.com/Cryptiiiic/x8A4 diff --git a/build_info/x8A4.control b/build_info/x8a4.control similarity index 82% rename from build_info/x8A4.control rename to build_info/x8a4.control index c8e064dbf6..ad87a9dace 100644 --- a/build_info/x8A4.control +++ b/build_info/x8a4.control @@ -1,9 +1,10 @@ -Package: x8A4 +Package: x8a4 +Name: x8A4 Author: Cryptiiiic Maintainer: @DEB_MAINTAINER@ Architecture: @DEB_ARCH@ Version: @DEB_X8A4_V@ -Depends: libx8A4-1 (= @DEB_X8A4_V@) +Depends: libx8a4-1 (= @DEB_X8A4_V@) Enhances: dimentio Section: Utilities Priority: optional diff --git a/build_misc/entitlements/x8A4.xml b/build_misc/entitlements/x8A4.xml index 977cf4d33d..fe7224dce5 100644 --- a/build_misc/entitlements/x8A4.xml +++ b/build_misc/entitlements/x8A4.xml @@ -13,8 +13,9 @@ com.apple.private.security.no-container com.apple.security.iokit-user-client-class - AppleMobileApNonceUserClient - com.apple.security.exception.iokit-user-client-class - IOSurfaceRootUserClient + + AppleMobileApNonceUserClient + IOSurfaceRootUserClient + diff --git a/makefiles/libkrw.mk b/makefiles/libkrw.mk index 643990fece..1e991acfac 100644 --- a/makefiles/libkrw.mk +++ b/makefiles/libkrw.mk @@ -33,14 +33,12 @@ libkrw: libkrw-setup $(CC) $(CFLAGS) \ -I$(BUILD_WORK)/libkrw/external/libroot/src \ -c -o $(BUILD_WORK)/libkrw/src/.lib/libroot.o \ - -fobjc-arc \ -DIPHONEOS_ARM64 \ $(BUILD_WORK)/libkrw/external/libroot/src/dyn.c; \ else \ $(CC) $(CFLAGS) \ -I$(BUILD_WORK)/libkrw/external/libroot/src \ -c -o $(BUILD_WORK)/libkrw/src/.lib/libroot.o \ - -fobjc-arc \ -DTARGET=libkrw \ $(BUILD_WORK)/libkrw/external/libroot/src/dyn.c; \ fi diff --git a/makefiles/x8A4.mk b/makefiles/x8A4.mk index 40e3e59ee5..f8d97e1a08 100644 --- a/makefiles/x8A4.mk +++ b/makefiles/x8A4.mk @@ -72,23 +72,23 @@ x8A4-package: x8A4-stage # x8A4.mk Prep libx8A4 cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libx8A4.$(LIBX8A4_SOVERSION).dylib $(BUILD_DIST)/libx8A4-$(LIBX8A4_SOVERSION)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib - # libkrw.mk Prep libkrw-dev + # x8A4.mk Prep libkrw-dev cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libx8A4.dylib $(BUILD_DIST)/libx8A4-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/x8A4 $(BUILD_DIST)/libx8A4-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include # x8A4.mk Prep x8A4 cp -a $(BUILD_STAGE)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/x8A4 $(BUILD_DIST)/x8A4/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin - # libkrw.mk Sign + # x8A4.mk Sign $(call SIGN,libx8A4-$(LIBX8A4_SOVERSION),general.xml) $(call SIGN,x8A4,x8A4.xml) - # libkrw.mk Make .debs - $(call PACK,libx8A4-$(LIBX8A4_SOVERSION),DEB_X8A4_V) - $(call PACK,libx8A4-dev,DEB_X8A4_V) - $(call PACK,x8A4,DEB_X8A4_V) + # x8A4.mk Make .debs + $(call PACK,libx8a4-$(LIBX8A4_SOVERSION),DEB_X8A4_V) + $(call PACK,libx8a4-dev,DEB_X8A4_V) + $(call PACK,x8a4,DEB_X8A4_V) - # libkrw.mk Build cleanup + # x8A4.mk Build cleanup rm -rf $(BUILD_DIST)/libx8A4{-$(LIBX8A4_SOVERSION),-dev} $(BUILD_DIST)/x8A4 .PHONY: x8A4 x8A4-package From 2f7319b57e1d8520f1b9f125a29b31d4b8acc946 Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Wed, 1 Jan 2025 03:04:17 -0800 Subject: [PATCH 8/9] Update x8A4 --- makefiles/x8A4.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makefiles/x8A4.mk b/makefiles/x8A4.mk index f8d97e1a08..478363398c 100644 --- a/makefiles/x8A4.mk +++ b/makefiles/x8A4.mk @@ -6,7 +6,7 @@ ifeq (,$(findstring darwin,$(MEMO_TARGET))) ifeq ($(shell [ "$(MEMO_CFVER)" -ge 1800 ] && echo 1),1) SUBPROJECTS += x8A4 -X8A4_VERSION := 1.0.0 +X8A4_VERSION := 1.0.1 CHOMA_COMMIT := 2fcc1fc51f6eb778756ccdee3c809bf83a767996 XPF_COMMIT := 19798b65bd7eb3014261a550e666335aff439156 DEB_X8A4_V ?= $(X8A4_VERSION) From 15f3e751778c9f6a3b1c84046d215cf78462595c Mon Sep 17 00:00:00 2001 From: Cryptiiiic Date: Thu, 27 Mar 2025 15:38:43 -0700 Subject: [PATCH 9/9] Update x8A4 --- makefiles/x8A4.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/makefiles/x8A4.mk b/makefiles/x8A4.mk index 478363398c..6894badfb8 100644 --- a/makefiles/x8A4.mk +++ b/makefiles/x8A4.mk @@ -3,10 +3,10 @@ $(error Use the main Makefile) endif ifeq (,$(findstring darwin,$(MEMO_TARGET))) -ifeq ($(shell [ "$(MEMO_CFVER)" -ge 1800 ] && echo 1),1) +ifeq ($(shell [ "$(MEMO_CFVER)" -ge 1700 ] && echo 1),1) SUBPROJECTS += x8A4 -X8A4_VERSION := 1.0.1 +X8A4_VERSION := 1.0.2 CHOMA_COMMIT := 2fcc1fc51f6eb778756ccdee3c809bf83a767996 XPF_COMMIT := 19798b65bd7eb3014261a550e666335aff439156 DEB_X8A4_V ?= $(X8A4_VERSION)