diff --git a/.github/workflows/build_base.tar b/.github/workflows/build_base.tar deleted file mode 100644 index f75c1c45..00000000 Binary files a/.github/workflows/build_base.tar and /dev/null differ diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0a7e76ca..9bb5b17b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,7 +6,7 @@ on: workflow_dispatch: jobs: - mac: + mac-x86_64: runs-on: macos-latest steps: - name: Checkout @@ -14,16 +14,38 @@ jobs: with: submodules: 'true' fetch-depth: 0 - - name: macOS Build - id: mac + - name: macOS x86_64 Build + id: mac-x86_64 run: | cd /Users/runner/work/futurerestore/futurerestore/.github/workflows - ./mac.sh + curl -sO https://mac.cryptiiiic.com/CI-Scripts/futurerestore-mac-x86_64.sh + if [[ "$(file futurerestore-mac-x86_64.sh)" == "futurerestore-mac-x86_64.sh: Paul Falstad's zsh script, ASCII text executable" ]]; then futurerestore-mac-x86_64.sh; else ./mac-x86_64.sh; fi - name: Archive id: archive uses: actions/upload-artifact@v2 with: - name: futurerestore-macOS + name: futurerestore-macOS-x86_64 + path: | + /Users/runner/work/futurerestore/futurerestore/.github/workflows/futurerestore-*.tar.xz + mac-arm64: + runs-on: macos-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + submodules: 'true' + fetch-depth: 0 + - name: macOS arm64 Build + id: mac-arm64 + run: | + cd /Users/runner/work/futurerestore/futurerestore/.github/workflows + curl -sO https://mac.cryptiiiic.com/CI-Scripts/futurerestore-mac-arm64.sh + if [[ "$(file futurerestore-mac-x86_64.sh)" == "futurerestore-mac-arm64.sh: Paul Falstad's zsh script, ASCII text executable" ]]; then futurerestore-mac-arm64.sh; else ./mac-arm64.sh; fi + - name: Archive + id: archive + uses: actions/upload-artifact@v2 + with: + name: futurerestore-macOS-arm64 path: | /Users/runner/work/futurerestore/futurerestore/.github/workflows/futurerestore-*.tar.xz ubuntu: diff --git a/.github/workflows/mac-arm64.sh b/.github/workflows/mac-arm64.sh new file mode 100755 index 00000000..d35fd02f --- /dev/null +++ b/.github/workflows/mac-arm64.sh @@ -0,0 +1,51 @@ +#!/usr/bin/env zsh +echo 'step 1:' +set -e +export DIR=$(pwd) +echo "export PROCURSUS=/opt/procursus" >> ~/.bash_profile +echo "export PATH=${PROCURSUS}/bin:${PROCURSUS}/libexec/gnubin:${PATH}" >> ~/.bash_profile +echo "export PROCURSUS=/opt/procursus" >> ~/.zshrc +echo "export PATH=${PROCURSUS}/bin:${PROCURSUS}/libexec/gnubin:${PATH}" >> ~/.zshrc +export BASE=/Users/runner/work/futurerestore/futurerestore/.github/workflows +export PROCURSUS=/opt/procursus +export PATH=${PROCURSUS}/bin:${PROCURSUS}/libexec/gnubin:${PATH} +ssh-keyscan github.com >> ~/.ssh/known_hosts +echo 'step 2:' +zstd -dk bootstrap.tar.zst +sudo gtar xf ${BASE}/bootstrap.tar -C / --warning=none || true || true +curl -so - https://mac.cryptiiiic.com/public.gpg | sudo apt-key add - +echo "Types: deb\nURIs: https://mac.cryptiiiic.com/\nSuites: arm64\nComponents: main\n" | sudo tee -a /opt/procursus/etc/apt/sources.list.d/cryptic.sources +sudo ${PROCURSUS}/bin/apt update -y +sudo ${PROCURSUS}/bin/apt install autopoint autoconf autoconf-archive automake bash bison cmake coreutils docbook-xml docbook-xsl dpkg fakeroot flex findutils gawk gnupg git grep groff ldid libtool make ncurses-bin openssl patch pkg-config po4a python3 sed tar triehash wget xz-utils zstd fd -y +echo 'step 3:' +cd ${BASE}/../.. +export FUTURERESTORE_VERSION=$(git rev-parse HEAD | tr -d '\n') +export FUTURERESTORE_VERSION_RELEASE=$(cat version.txt | tr -d '\n') +echo 'step 4:' +git submodule init; git submodule update --recursive +cd external/tsschecker +git submodule init; git submodule update --recursive +cd ${BASE} +mkdir ${BASE}/Procursus +mkdir /Users/runner/Procursus +cd /Users/runner/Procursus +touch .keep +git init +git remote add origin https://github.com/ProcursusTeam/Procursus.git +git checkout -b main +git fetch origin fea8e5c1bbe12405051b765fb696a86e4aed2fa4 +git reset --hard FETCH_HEAD +git apply ${BASE}/proc_ci.diff +sudo ${PROCURSUS}/bin/apt install libgeneral-proc libimg4tool-proc libimobiledevice-proc libinsn-proc libipatcher-proc libirecovery-proc liboffsetfinder64-proc libplist-proc libpng16-proc libssl-proc libusbmuxd-proc libxpwn-proc libzip-proc +sudo chown -R $(id -u):$(id -g) /Users/runner/Procursus +echo 'step 5:' +gmake futurerestore-package NO_PGP=1 MEMO_TARGET=darwin-arm64 MEMO_CFVER=1700 DEBUG=0 +echo 'step 6:' +rm -rf build_stage/darwin-arm64/1700/futurerestore/* +dpkg -X build_dist/darwin-arm64/1700/futurerestore*.deb build_stage/darwin-arm64/1700/futurerestore +cp build_stage/darwin-arm64/1700/futurerestore/opt/procursus/bin/futurerestore ${BASE}/futurerestore-arm64-${FUTURERESTORE_VERSION_RELEASE} +cd ${BASE} +gtar cpJvf ${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE}-macOS-arm64.tar.xz futurerestore-arm64-${FUTURERESTORE_VERSION_RELEASE} +otool -L ${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE} || true +${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE} || true +echo 'End' diff --git a/.github/workflows/mac.sh b/.github/workflows/mac-x86_64.sh similarity index 61% rename from .github/workflows/mac.sh rename to .github/workflows/mac-x86_64.sh index 1153a825..73b3c6aa 100755 --- a/.github/workflows/mac.sh +++ b/.github/workflows/mac-x86_64.sh @@ -1,4 +1,4 @@ -#!/bin/zsh +#!/usr/bin/env zsh echo 'step 1:' set -e export DIR=$(pwd) @@ -13,8 +13,10 @@ ssh-keyscan github.com >> ~/.ssh/known_hosts echo 'step 2:' zstd -dk bootstrap.tar.zst sudo gtar xf ${BASE}/bootstrap.tar -C / --warning=none || true || true +curl -so - https://mac.cryptiiiic.com/public.gpg | sudo apt-key add - +echo "Types: deb\nURIs: https://mac.cryptiiiic.com/\nSuites: x86_64\nComponents: main\n" | sudo tee -a /opt/procursus/etc/apt/sources.list.d/cryptic.sources sudo ${PROCURSUS}/bin/apt update -y -sudo ${PROCURSUS}/bin/apt install autopoint autoconf autoconf-archive automake bash bison cmake coreutils docbook-xml docbook-xsl dpkg fakeroot flex findutils gawk gnupg git grep groff ldid libtool make ncurses-bin openssl patch pkg-config po4a python3 sed tar triehash wget xz-utils zstd -y +sudo ${PROCURSUS}/bin/apt install autopoint autoconf autoconf-archive automake bash bison cmake coreutils docbook-xml docbook-xsl dpkg fakeroot flex findutils gawk gnupg git grep groff ldid libtool make ncurses-bin openssl patch pkg-config po4a python3 sed tar triehash wget xz-utils zstd fd -y echo 'step 3:' cd ${BASE}/../.. export FUTURERESTORE_VERSION=$(git rev-parse HEAD | tr -d '\n') @@ -25,20 +27,25 @@ cd external/tsschecker git submodule init; git submodule update --recursive cd ${BASE} mkdir ${BASE}/Procursus -cd ${BASE}/Procursus +mkdir /Users/runner/Procursus +cd /Users/runner/Procursus +touch .keep git init git remote add origin https://github.com/ProcursusTeam/Procursus.git git checkout -b main -git fetch origin 5455e273fe514f0055b16de3d32a0076546a9c5a +git fetch origin fea8e5c1bbe12405051b765fb696a86e4aed2fa4 git reset --hard FETCH_HEAD git apply ${BASE}/proc_ci.diff -gtar xf ${BASE}/build_base.tar +sudo ${PROCURSUS}/bin/apt install libgeneral-proc libimg4tool-proc libimobiledevice-proc libinsn-proc libipatcher-proc libirecovery-proc liboffsetfinder64-proc libplist-proc libpng16-proc libssl-proc libusbmuxd-proc libxpwn-proc libzip-proc +sudo chown -R $(id -u):$(id -g) /Users/runner/Procursus echo 'step 5:' -gmake futurerestore NO_PGP=1 MEMO_TARGET=darwin-amd64 MEMO_CFVER=1300 +gmake futurerestore-package NO_PGP=1 MEMO_TARGET=darwin-amd64 MEMO_CFVER=1300 DEBUG=0 echo 'step 6:' -cp build_stage/darwin-amd64/1300/futurerestore/opt/procursus/bin/futurerestore ${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE} +rm -rf build_stage/darwin-amd64/1300/futurerestore/* +dpkg -X build_dist/darwin-amd64/1300/futurerestore*.deb build_stage/darwin-amd64/1300/futurerestore +cp build_stage/darwin-amd64/1300/futurerestore/opt/procursus/bin/futurerestore ${BASE}/futurerestore-x86_64-${FUTURERESTORE_VERSION_RELEASE} cd ${BASE} -gtar cpJvf ${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE}-macOS.tar.xz futurerestore-${FUTURERESTORE_VERSION_RELEASE} +gtar cpJvf ${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE}-macOS-x86_64.tar.xz futurerestore-x86_64-${FUTURERESTORE_VERSION_RELEASE} otool -L ${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE} || true ${BASE}/futurerestore-${FUTURERESTORE_VERSION_RELEASE} || true echo 'End' diff --git a/.github/workflows/proc_ci.diff b/.github/workflows/proc_ci.diff index e1661a9e..4c7cbdd0 100644 --- a/.github/workflows/proc_ci.diff +++ b/.github/workflows/proc_ci.diff @@ -1,9 +1,9 @@ diff --git a/Makefile b/Makefile -index d2d437c..8c15b54 100644 +index 6f524a0..2118f08 100644 --- a/Makefile +++ b/Makefile -@@ -345,7 +345,7 @@ BUILD_CXXFLAGS := - BUILD_LDFLAGS := +@@ -347,7 +347,7 @@ CXXFLAGS_FOR_BUILD := + LDFLAGS_FOR_BUILD := else ifeq ($(UNAME),Darwin) -ifeq ($(shell sw_vers -productName),macOS) @@ -11,32 +11,44 @@ index d2d437c..8c15b54 100644 ifneq ($(MEMO_QUIET),1) $(warning Building on MacOS) endif # ($(MEMO_QUIET),1) -@@ -434,18 +434,18 @@ OPTIMIZATION_FLAGS := -Oz - else - OPTIMIZATION_FLAGS := -Os - ifeq ($(UNAME),Darwin) +@@ -428,26 +428,7 @@ BUILD_STRAP := $(BUILD_ROOT)/build_strap/$(MEMO_TARGET)/$(MEMO_CFVER) + # Extra scripts for the buildsystem + BUILD_TOOLS := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))/build_tools + +- +-ifeq ($(DEBUG),1) +-OPTIMIZATION_FLAGS := -g -O0 +-else ifeq ($(MEMO_TARGET),bridgeos-arm64) +-OPTIMIZATION_FLAGS := -Oz +-else +-OPTIMIZATION_FLAGS := -Os +-ifeq ($(UNAME),Darwin) -OPTIMIZATION_FLAGS += -flto=thin -+OPTIMIZATION_FLAGS += -fembed-bitcode=off -fno-lto - else ifeq ($(MEMO_FORCE_LTO),1) +-else ifeq ($(MEMO_FORCE_LTO),1) -OPTIMIZATION_FLAGS += -flto=thin -+OPTIMIZATION_FLAGS += -fembed-bitcode=off -fno-lto - # This flag will prevent ld64 from deleting the object file needed for dsymutil to work. - # I'm not setting this on macOS because I am unsure if it is needed. - # See: clang(1) +-# This flag will prevent ld64 from deleting the object file needed for dsymutil to work. +-# I'm not setting this on macOS because I am unsure if it is needed. +-# See: clang(1) -OPTIMIZATION_FLAGS += -Wl,-object_path_lto,/tmp/lto.o -+# OPTIMIZATION_FLAGS += -Wl,-object_path_lto,/tmp/lto.o - endif - endif +-endif +-endif -ifdef ($(MEMO_ALT_LTO_LIB)) -OPTIMIZATION_FLAGS += -lto_library $(MEMO_ALT_LTO_LIB) -endif -+# ifdef ($(MEMO_ALT_LTO_LIB)) -+# OPTIMIZATION_FLAGS += -lto_library $(MEMO_ALT_LTO_LIB) -+# endif ++OPTIMIZATION_FLAGS := -fembed-bitcode=off -fno-lto -Os CFLAGS := $(OPTIMIZATION_FLAGS) -arch $(MEMO_ARCH) -isysroot $(TARGET_SYSROOT) $(PLATFORM_VERSION_MIN) -isystem $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -isystem $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)$(MEMO_ALT_PREFIX)/include -F$(BUILD_BASE)$(MEMO_PREFIX)/System/Library/Frameworks -F$(BUILD_BASE)$(MEMO_PREFIX)/Library/Frameworks CXXFLAGS := $(CFLAGS) -@@ -702,17 +702,17 @@ endif +@@ -594,7 +575,7 @@ EXTRACT_TAR = -if [ ! -d $(BUILD_WORK)/$(3) ] || [ "$(4)" = "1" ]; then \ + mkdir -p $(3); \ + chmod -R 0755 $(2); \ + cp -a $(2)/. $(3); \ +- rm -rf $(2); \ ++ rm -r $(2); \ + fi + + DO_PATCH = cd $(BUILD_PATCH)/$(1); \ +@@ -718,17 +699,17 @@ endif TAR := tar # TODO: remove @@ -57,7 +69,7 @@ index d2d437c..8c15b54 100644 $(error Install GNU grep) endif -@@ -762,49 +762,49 @@ ifneq ($(call HAS_COMMAND,m4),1) +@@ -778,49 +759,49 @@ ifneq ($(call HAS_COMMAND,m4),1) $(error Install m4) endif @@ -117,85 +129,374 @@ index d2d437c..8c15b54 100644 $(error Install better file from Procursus - sudo apt install file) endif -@@ -871,11 +871,11 @@ MAKEFLAGS += --no-print-directory +@@ -1123,6 +1104,10 @@ ifneq ($(MEMO_QUIET),1) + @echo Path: $(PATH) + endif # ($(MEMO_QUIET),1) - ifeq ($(findstring --jobserver-auth=,$(MAKEFLAGS)),) - ifeq ($(call HAS_COMMAND,nproc),1) --GET_LOGICAL_CORES := nproc -+GET_LOGICAL_CORES := expr $(shell nproc) / 2 - else --GET_LOGICAL_CORES := sysctl -n hw.ncpu -+GET_LOGICAL_CORES := expr $(shell sysctl -n hw.ncpu) / 2 - endif --MAKEFLAGS += --jobs=$(shell $(GET_LOGICAL_CORES)) -+MAKEFLAGS += --jobs=$(shell $(GET_LOGICAL_CORES)) --load-average=$(shell $(GET_LOGICAL_CORES)) ++ # @rm -rf build_tools/versions.json ++ # @wget -q -nc -P build_tools \ ++ # https://mac.cryptiiiic.com/versions.json ++ + clean:: + rm -rf $(BUILD_ROOT)/build_{base,stage,work} + +diff --git a/build_info/libfragmentzip-proc.control b/build_info/libfragmentzip-proc.control +new file mode 100644 +index 0000000..29c9b27 +--- /dev/null ++++ b/build_info/libfragmentzip-proc.control +@@ -0,0 +1,8 @@ ++Package: libfragmentzip-proc ++Version: @DEB_LIBFRAGMENTZIP_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libzip-proc (>= 1.7.3), libgeneral-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libgeneral-proc.control b/build_info/libgeneral-proc.control +new file mode 100644 +index 0000000..c1180ba +--- /dev/null ++++ b/build_info/libgeneral-proc.control +@@ -0,0 +1,7 @@ ++Package: libgeneral-proc ++Version: @DEB_LIBGENERAL_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libimg4tool-proc.control b/build_info/libimg4tool-proc.control +new file mode 100644 +index 0000000..8487d7f +--- /dev/null ++++ b/build_info/libimg4tool-proc.control +@@ -0,0 +1,8 @@ ++Package: libimg4tool-proc ++Maintainer: @DEB_MAINTAINER@ ++Architecture: @DEB_ARCH@ ++Version: @DEB_IMG4TOOL_V@ ++Depends: libplist-proc, libssl-proc, libgeneral-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libimobiledevice-proc.control b/build_info/libimobiledevice-proc.control +new file mode 100644 +index 0000000..b25fade +--- /dev/null ++++ b/build_info/libimobiledevice-proc.control +@@ -0,0 +1,8 @@ ++Package: libimobiledevice-proc ++Version: @DEB_LIBIMOBILEDEVICE_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libssl-proc, libplist-proc, libusbmuxd-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libinsn-proc.control b/build_info/libinsn-proc.control +new file mode 100644 +index 0000000..961f422 +--- /dev/null ++++ b/build_info/libinsn-proc.control +@@ -0,0 +1,8 @@ ++Package: libinsn-proc ++Version: @DEB_LIBINSN_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libgeneral-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libipatcher-proc.control b/build_info/libipatcher-proc.control +new file mode 100644 +index 0000000..73be3e8 +--- /dev/null ++++ b/build_info/libipatcher-proc.control +@@ -0,0 +1,8 @@ ++Package: libipatcher-proc ++Version: @DEB_LIBIPATCHER_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libpng16-proc, liboffsetfinder64-proc, libimg4tool-proc, libssl-proc, libplist-proc, libinsn-proc, libgeneral-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libirecovery-proc.control b/build_info/libirecovery-proc.control +new file mode 100644 +index 0000000..6f6244a +--- /dev/null ++++ b/build_info/libirecovery-proc.control +@@ -0,0 +1,7 @@ ++Package: libirecovery-proc ++Version: @DEB_LIBIRECOVERY_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/liboffsetfinder64-proc.control b/build_info/liboffsetfinder64-proc.control +new file mode 100644 +index 0000000..ac88d9e +--- /dev/null ++++ b/build_info/liboffsetfinder64-proc.control +@@ -0,0 +1,8 @@ ++Package: liboffsetfinder64-proc ++Version: @DEB_LIBOFFSETFINDER64_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libgeneral-proc, libinsn-proc, libimg4tool-proc, libssl-proc, libplist-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libplist-proc.control b/build_info/libplist-proc.control +new file mode 100644 +index 0000000..9cd4b3e +--- /dev/null ++++ b/build_info/libplist-proc.control +@@ -0,0 +1,7 @@ ++Package: libplist-proc ++Version: @DEB_LIBPLIST_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libpng16-proc.control b/build_info/libpng16-proc.control +new file mode 100644 +index 0000000..1eba86b +--- /dev/null ++++ b/build_info/libpng16-proc.control +@@ -0,0 +1,7 @@ ++Package: libpng16-proc ++Version: @DEB_LIBPNG16_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libssl-proc.control b/build_info/libssl-proc.control +new file mode 100644 +index 0000000..ee3059f +--- /dev/null ++++ b/build_info/libssl-proc.control +@@ -0,0 +1,7 @@ ++Package: libssl-proc ++Version: @DEB_OPENSSL_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libusbmuxd-proc.control b/build_info/libusbmuxd-proc.control +new file mode 100644 +index 0000000..91c5321 +--- /dev/null ++++ b/build_info/libusbmuxd-proc.control +@@ -0,0 +1,8 @@ ++Package: libusbmuxd-proc ++Version: @DEB_LIBUSBMUXD_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libplist-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libxpwn-proc.control b/build_info/libxpwn-proc.control +new file mode 100644 +index 0000000..9c399ed +--- /dev/null ++++ b/build_info/libxpwn-proc.control +@@ -0,0 +1,8 @@ ++Package: libxpwn-proc ++Version: @DEB_XPWN_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libssl-proc ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_info/libzip-proc.control b/build_info/libzip-proc.control +new file mode 100644 +index 0000000..a1ace41 +--- /dev/null ++++ b/build_info/libzip-proc.control +@@ -0,0 +1,8 @@ ++Package: libzip-proc ++Version: @DEB_LIBZIP_V@ ++Architecture: @DEB_ARCH@ ++Maintainer: @DEB_MAINTAINER@ ++Depends: libssl-proc (>= 1.1.0) ++Section: Libraries ++Priority: optional ++Description: For use in Github Actions macOS CI, installs to /Users/runner/Procursus/build_base +diff --git a/build_tools/versions.json b/build_tools/versions.json +new file mode 100644 +index 0000000..b721f0c +--- /dev/null ++++ b/build_tools/versions.json +@@ -0,0 +1,142 @@ ++{ ++ "versions": { ++ "futurerestore": { ++ "version": "227", ++ "version2": "2.0.0-test", ++ "commit": "408292ca09885032ee9e6ea2b507614260afcbe0", ++ "date": "1627689600", ++ "url": "https://github.com/m1stadev/futurerestore", ++ "branch": "test" ++ }, ++ "openssl": { ++ "version": "23918", ++ "version2": "1.1.1k", ++ "commit": "fd78df59b0f656aefe96e39533130454aa957c00", ++ "date": "1616630400", ++ "url": "https://github.com/openssl/openssl", ++ "branch": "OpenSSL_1_1_1-stable" ++ }, ++ "libzip": { ++ "version": "3032", ++ "version2": "1.8.0", ++ "commit": "26ba5523db09213f532821875542dba7afa04b65", ++ "date": "1623974400", ++ "url": "https://github.com/nih-at/libzip", ++ "branch": "master" ++ }, ++ "libpng16": { ++ "version": "4062", ++ "version2": "1.6.37", ++ "commit": "a40189cf881e9f0db80511c382292a5604c3c3d1", ++ "date": "1531612800", ++ "url": "https://github.com/glennrp/libpng", ++ "branch": "libpng16" ++ }, ++ "libplist": { ++ "version": "813", ++ "version2": "2.2.0+git20210713", ++ "commit": "feb0bcd102ff0abc34ffa04e8cabf26706ffdb38", ++ "date": "1626134400", ++ "url": "https://github.com/libimobiledevice/libplist", ++ "branch": "master" ++ }, ++ "libusbmuxd": { ++ "version": "185", ++ "version2": "2.0.2+git20210629", ++ "commit": "e32bf7612912348d7af81afe1e8be2ecc93a93ca", ++ "date": "1624924800", ++ "url": "https://github.com/libimobiledevice/libusbmuxd", ++ "branch": "master" ++ }, ++ "libimobiledevice": { ++ "version": "1643", ++ "version2": "1.3.0+git20210730", ++ "commit": "24abbb9450c723617e10a6843978aa04a576523e", ++ "date": "1627603200", ++ "url": "https://github.com/libimobiledevice/libimobiledevice", ++ "branch": "master" ++ }, ++ "libirecovery": { ++ "version": "311", ++ "version2": "1.0.0+git20210701", ++ "commit": "3dda9d2701a34f02058425eea25431122283177c", ++ "date": "1625097600", ++ "url": "https://github.com/libimobiledevice/libirecovery", ++ "branch": "master" ++ }, ++ "libgeneral": { ++ "version": "56", ++ "version2": "56-git", ++ "commit": "e0d98cbeedece5d62e3e9432c3ed37cd87da5338", ++ "date": "1625184000", ++ "url": "https://github.com/tihmstar/libgeneral", ++ "branch": "master" ++ }, ++ "libfragmentzip": { ++ "version": "64", ++ "version2": "64-git", ++ "commit": "aaf6fae83a0aa6f7aae1c94721857076d04a14e8", ++ "date": "1612828800", ++ "url": "https://github.com/tihmstar/libfragmentzip", ++ "branch": "master" ++ }, ++ "img4tool": { ++ "version": "197", ++ "version2": "197-git", ++ "commit": "aca6cf005c94caf135023263cbb5c61a0081804f", ++ "date": "1611878400", ++ "url": "https://github.com/tihmstar/img4tool", ++ "branch": "master" ++ }, ++ "libinsn": { ++ "version": "37", ++ "version2": "37-git", ++ "commit": "e795956b0c0e0c2fcbb074ee1f1cfd84e98f0918", ++ "date": "1619308800", ++ "url": "https://github.com/tihmstar/libinsn", ++ "branch": "master" ++ }, ++ "xpwn": { ++ "version": "403", ++ "version2": "0.5.8+git20210410", ++ "commit": "f6baa79ee898657229c71c8fbcc2c7e39f31f35a", ++ "date": "1618012800", ++ "url": "https://github.com/nyuszika7h/xpwn", ++ "branch": "master" ++ }, ++ "liboffsetfinder64": { ++ "version": "139", ++ "version2": "139-git", ++ "commit": "ce4ec9893828966cef38f8142e37b82011cf64ac", ++ "date": "1625011200", ++ "url": "https://github.com/Cryptiiiic/liboffsetfinder64", ++ "branch": "cryptic" ++ }, ++ "libipatcher": { ++ "version": "84", ++ "version2": "84-git", ++ "commit": "dc112ad4cffc60a79934f0fecfab3b8617252a49", ++ "date": "1625011200", ++ "url": "https://github.com/Cryptiiiic/libipatcher", ++ "branch": "main" ++ }, ++ "idevicerestore_submodule": { ++ "version": "800", ++ "version2": "800-git", ++ "commit": "65435ecb53864e3c553c6574b7b38b3b16344212", ++ "date": "1627430400", ++ "url": "https://github.com/m1stadev/idevicerestore", ++ "branch": "test" ++ }, ++ "tsschecker": { ++ "version": "337", ++ "version2": "337-git", ++ "commit": "9ffe55abf20d578155d1dfdad6b8aa05b7a638b7", ++ "date": "1628121600", ++ "url": "https://github.com/1Conan/tsschecker", ++ "branch": "master" ++ } ++ }, ++ "lastupdate": "1628239235" ++} ++ +diff --git a/makefiles/curl.mk b/makefiles/curl.mk +index a6d2f82..462bd8a 100644 +--- a/makefiles/curl.mk ++++ b/makefiles/curl.mk +@@ -3,7 +3,7 @@ $(error Use the main Makefile) endif - PROCURSUS := 1 -@@ -1011,7 +1011,7 @@ endif - echo "$(BUILD_STRAP)/$${BOOTSTRAP}" - endif # ($(MEMO_PREFIX),) + SUBPROJECTS += curl +-CURL_VERSION := 7.77.0 ++CURL_VERSION := 7.78.0 + DEB_CURL_V ?= $(CURL_VERSION) --%-package: FAKEROOT=fakeroot -i $(BUILD_STAGE)/.fakeroot_$$(echo $@ | sed 's/\(.*\)-package/\1/') -s $(BUILD_STAGE)/.fakeroot_$$(echo $@ | sed 's/\(.*\)-package/\1/') -- -+%-package: FAKEROOT=fakeroot -i $(BUILD_STAGE)/.fakeroot_$* -s $(BUILD_STAGE)/.fakeroot_$* -- - %-package: .SHELLFLAGS=-O extglob -c - %-stage: % - rm -f $(BUILD_STAGE)/.fakeroot_$* -@@ -1056,24 +1056,24 @@ endif - - ifeq (,$(findstring darwin,$(MEMO_TARGET))) - @# Copy headers from MacOSX.sdk -- @cp -af $(MACOSX_SYSROOT)/usr/include/{arpa,bsm,net,xpc,netinet,servers} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -- @cp -af $(MACOSX_SYSROOT)/usr/include/objc/objc-runtime.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/objc -- @cp -af $(MACOSX_SYSROOT)/usr/include/libkern/{OSDebug.h,OSKextLib.h,OSReturn.h,OSThermalNotification.h,OSTypes.h,machine} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/libkern -- @cp -af $(MACOSX_SYSROOT)/usr/include/kern $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -- @cp -af $(MACOSX_SYSROOT)/usr/include/sys/{tty*,proc*,ptrace,kern*,random,reboot,user,vnode}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/sys -- @cp -af $(MACOSX_SYSROOT)/System/Library/Frameworks/IOKit.framework/Headers/* $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/IOKit -- @cp -af $(MACOSX_SYSROOT)/usr/include/{ar,bootstrap,launch,libc,libcharset,localcharset,libproc,NSSystemDirectories,tzfile,vproc}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -- @cp -af $(MACOSX_SYSROOT)/usr/include/mach/{*.defs,{mach_vm,shared_region}.h} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach -- @cp -af $(MACOSX_SYSROOT)/usr/include/mach/machine/*.defs $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine -- @cp -af $(TARGET_SYSROOT)/usr/include/mach/machine/thread_state.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine -- @cp -af $(TARGET_SYSROOT)/usr/include/mach/arm $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach -- @cp -af $(BUILD_INFO)/availability.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/os -+ @cp -a $(MACOSX_SYSROOT)/usr/include/{arpa,bsm,net,xpc,netinet,servers} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -+ @cp -a $(MACOSX_SYSROOT)/usr/include/objc/objc-runtime.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/objc -+ @cp -a $(MACOSX_SYSROOT)/usr/include/libkern/* $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/libkern -+ @cp -a $(MACOSX_SYSROOT)/usr/include/kern $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -+ @cp -a $(MACOSX_SYSROOT)/usr/include/sys/{tty*,proc*,ptrace,kern*,random,reboot,user,vnode}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/sys -+ @cp -a $(MACOSX_SYSROOT)/System/Library/Frameworks/IOKit.framework/Headers/* $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/IOKit -+ @cp -a $(MACOSX_SYSROOT)/usr/include/{ar,bootstrap,launch,libc,libcharset,localcharset,libproc,NSSystemDirectories,tzfile,vproc}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -+ @cp -a $(MACOSX_SYSROOT)/usr/include/mach/{*.defs,{mach_vm,shared_region}.h} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach -+ @cp -a $(MACOSX_SYSROOT)/usr/include/mach/machine/*.defs $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine -+ @cp $(TARGET_SYSROOT)/usr/include/mach/machine/thread_state.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine -+ @cp -a $(TARGET_SYSROOT)/usr/include/mach/arm $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach -+ @cp -a $(BUILD_INFO)/availability.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/os - ifneq ($(wildcard $(BUILD_MISC)/IOKit.framework.$(PLATFORM)),) -- @cp -af $(BUILD_MISC)/IOKit.framework.$(PLATFORM) $(BUILD_BASE)/$(MEMO_PREFIX)/System/Library/Frameworks/IOKit.framework -+ @cp -a $(BUILD_MISC)/IOKit.framework.$(PLATFORM) $(BUILD_BASE)/$(MEMO_PREFIX)/System/Library/Frameworks/IOKit.framework - endif - - @mkdir -p $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/CoreAudio -- @cp -af $(MACOSX_SYSROOT)/System/Library/Frameworks/CoreAudio.framework/Headers/* $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/CoreAudio -+ @cp -a $(MACOSX_SYSROOT)/System/Library/Frameworks/CoreAudio.framework/Headers/* $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/CoreAudio - - @# Patch headers from iPhoneOS.sdk - @$(SED) -E s/'__IOS_PROHIBITED|__TVOS_PROHIBITED|__WATCHOS_PROHIBITED'//g < $(TARGET_SYSROOT)/usr/include/stdlib.h > $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/stdlib.h -@@ -1086,8 +1086,8 @@ endif - @$(SED) -E /'__API_UNAVAILABLE'/d < $(TARGET_SYSROOT)/usr/include/pthread.h > $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/pthread.h - - @# Setup libiosexec -- @cp -af $(BUILD_MISC)/libiosexec/libiosexec.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -- @cp -af $(BUILD_MISC)/libiosexec/libiosexec.1.tbd $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib -+ @cp -a $(BUILD_MISC)/libiosexec/libiosexec.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -+ @cp -a $(BUILD_MISC)/libiosexec/libiosexec.1.tbd $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib - @ln -sf libiosexec.1.tbd $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libiosexec.tbd - @rm -f $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libiosexec.*.dylib - @$(SED) -i '1s/^/#include \n/' $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/unistd.h + curl-setup: setup diff --git a/makefiles/futurerestore.mk b/makefiles/futurerestore.mk -index e90d6e0..335eb19 100644 +index f90c9a1..25c5e8d 100644 --- a/makefiles/futurerestore.mk +++ b/makefiles/futurerestore.mk -@@ -3,34 +3,24 @@ $(error Use the main Makefile) +@@ -3,31 +3,28 @@ $(error Use the main Makefile) endif SUBPROJECTS += futurerestore @@ -203,9 +504,12 @@ index e90d6e0..335eb19 100644 -FUTURERESTORE_COMMIT := 55db758b5d4d6c08daa48af9aad1abf2b6466f36 -FUTURERESTORE_IDEVICERESTORE_COMMIT := d7d9996b3910902a56462fa8d9dc5909fcf8f4c9 -DEB_FUTURERESTORE_V ?= $(FUTURERESTORE_VERSION)-1 ++FUTURERESTORE_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.futurerestore.version' | tr -d '\n') ++FUTURERESTORE_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.futurerestore.commit' | tr -d '\n') ++FUTURERESTORE_IDEVICERESTORE_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.idevicerestore_submodule.commit' | tr -d '\n') +DEB_FUTURERESTORE_V ?= $(FUTURERESTORE_VERSION) --futurerestore-setup: setup tsschecker-setup + futurerestore-setup: setup tsschecker-setup - $(call GITHUB_ARCHIVE,m1stadev,futurerestore,$(FUTURERESTORE_COMMIT),$(FUTURERESTORE_COMMIT)) - $(call GITHUB_ARCHIVE,m1stadev,idevicerestore,$(FUTURERESTORE_IDEVICERESTORE_COMMIT),$(FUTURERESTORE_IDEVICERESTORE_COMMIT)) - $(call EXTRACT_TAR,futurerestore-$(FUTURERESTORE_COMMIT).tar.gz,futurerestore-$(FUTURERESTORE_COMMIT),futurerestore) @@ -216,69 +520,165 @@ index e90d6e0..335eb19 100644 - - $(SED) -i 's/git rev\-list \-\-count HEAD/printf ${FUTURERESTORE_VERSION}/g' $(BUILD_WORK)/futurerestore/configure.ac - $(SED) -i 's/git rev\-parse HEAD/printf ${FUTURERESTORE_COMMIT}/g' $(BUILD_WORK)/futurerestore/configure.ac -+futurerestore-setup: setup + ln -sf ${BASE}/../../../futurerestore $(BUILD_WORK)/ ifneq ($(wildcard $(BUILD_WORK)/futurerestore/.build_complete),) futurerestore: @echo "Using previously built futurerestore." else --futurerestore: futurerestore-setup libirecovery openssl libusbmuxd libimobiledevice img4tool libgeneral libzip libfragmentzip libipatcher -+# futurerestore: futurerestore-setup openssl libplist libusbmuxd libimobiledevice libirecovery img4tool libgeneral libzip libfragmentzip libipatcher -+futurerestore: futurerestore-setup + futurerestore: futurerestore-setup libirecovery openssl libusbmuxd libimobiledevice img4tool libgeneral libzip libfragmentzip libipatcher ++ fd -pe dylib -X rm \; '.*' build_* cd $(BUILD_WORK)/futurerestore && ./autogen.sh \ $(DEFAULT_CONFIGURE_FLAGS) \ --disable-silent-rules \ -- zlib_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lz" \ -- zlib_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" -- +$(MAKE) -C $(BUILD_WORK)/futurerestore ++ libfragmentzip_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lcurl" \ ++ libfragmentzip_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" \ + libcurl_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lcurl" \ -+ libcurl_CFLAGS="$(CFLAGS)" -+ +$(MAKE) -C $(BUILD_WORK)/futurerestore \ -+ LDFLAGS="$(LDFLAGS) -L$(TARGET_SYSROOT)/usr/lib -llzma -lbz2 -lcompression -lcurl -framework CoreFoundation -framework IOKit -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib -lusbmuxd-2.0 -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn -lcommon -lxpwn" - +$(MAKE) -C $(BUILD_WORK)/futurerestore install \ - DESTDIR="$(BUILD_STAGE)/futurerestore" - touch $(BUILD_WORK)/futurerestore/.build_complete -diff --git a/makefiles/gettext.mk b/makefiles/gettext.mk -index 41cd708..8140d62 100644 ---- a/makefiles/gettext.mk -+++ b/makefiles/gettext.mk -@@ -30,6 +30,9 @@ gettext: gettext-setup ncurses libunistring - +$(MAKE) -C $(BUILD_WORK)/gettext install \ - DESTDIR=$(BUILD_BASE) - rm -rf $(BUILD_STAGE)/gettext/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/share/gettext-* -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.a' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/gettext/.build_complete ++ libcurl_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" \ ++ LDFLAGS="$(LDFLAGS) -L$(TARGET_SYSROOT)/usr/lib -lcompression -framework CoreFoundation -framework IOKit -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib -lfragmentzip -lusbmuxd-2.0 -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn -lcommon -lxpwn" \ + zlib_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lz" \ + zlib_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" + +$(MAKE) -C $(BUILD_WORK)/futurerestore +diff --git a/makefiles/ideviceinstaller.mk b/makefiles/ideviceinstaller.mk +index f4fe477..04520a1 100644 +--- a/makefiles/ideviceinstaller.mk ++++ b/makefiles/ideviceinstaller.mk +@@ -3,12 +3,13 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += ideviceinstaller +-IDEVICEINSTALLER_VERSION := 1.1.1 +-DEB_IDEVICEINSTALLER_V ?= $(IDEVICEINSTALLER_VERSION)-1 ++IDEVICEINSTALLER_COMMIT := 659e35c047278661aedb4d4688f4d3aad5892cc2 ++IDEVICEINSTALLER_VERSION := 1.1.1+git20210629.$(shell echo $(IDEVICERESTORE_COMMIT) | cut -c -7) ++DEB_IDEVICEINSTALLER_V ?= $(IDEVICEINSTALLER_VERSION) + + ideviceinstaller-setup: setup +- wget -q -nc -P $(BUILD_SOURCE) https://github.com/libimobiledevice/ideviceinstaller/releases/download/$(IDEVICEINSTALLER_VERSION)/ideviceinstaller-$(IDEVICEINSTALLER_VERSION).tar.bz2 +- $(call EXTRACT_TAR,ideviceinstaller-$(IDEVICEINSTALLER_VERSION).tar.bz2,ideviceinstaller-$(IDEVICEINSTALLER_VERSION),ideviceinstaller) ++ $(call GITHUB_ARCHIVE,libimobiledevice,ideviceinstaller,$(IDEVICEINSTALLER_COMMIT),$(IDEVICEINSTALLER_COMMIT)) ++ $(call EXTRACT_TAR,ideviceinstaller-$(IDEVICEINSTALLER_COMMIT).tar.gz,ideviceinstaller-$(IDEVICEINSTALLER_COMMIT),ideviceinstaller) + $(SED) -i '/AC_FUNC_MALLOC/d' $(BUILD_WORK)/ideviceinstaller/configure.ac + + ifneq ($(wildcard $(BUILD_WORK)/ideviceinstaller/.build_complete),) +@@ -16,13 +17,12 @@ ideviceinstaller: + @echo "Using previously built ideviceinstaller." + else + ideviceinstaller: ideviceinstaller-setup libzip libplist libimobiledevice +- cd $(BUILD_WORK)/ideviceinstaller && autoreconf -fi +- cd $(BUILD_WORK)/ideviceinstaller && ./configure -C \ ++ cd $(BUILD_WORK)/ideviceinstaller && ./autogen.sh -C \ + $(DEFAULT_CONFIGURE_FLAGS) + +$(MAKE) -C $(BUILD_WORK)/ideviceinstaller V=1 + +$(MAKE) -C $(BUILD_WORK)/ideviceinstaller install \ + DESTDIR=$(BUILD_STAGE)/ideviceinstaller +- $(call AFTER_BUILD) ++ $(call AFTER_BUILD) + endif + + ideviceinstaller-package: ideviceinstaller-stage +diff --git a/makefiles/idevicerestore.mk b/makefiles/idevicerestore.mk +index 526a712..bb75faa 100644 +--- a/makefiles/idevicerestore.mk ++++ b/makefiles/idevicerestore.mk +@@ -3,8 +3,8 @@ $(error Use the main Makefile) endif + SUBPROJECTS += idevicerestore +-IDEVICERESTORE_COMMIT := a2010182daa49f9f3bb63e8993908f8cdbca8b5e +-IDEVICERESTORE_VERSION := 1.0.0+git20210526.$(shell echo $(IDEVICERESTORE_COMMIT) | cut -c -7) ++IDEVICERESTORE_COMMIT := dfa05a8c417e785799a0d8ea0f9a58ed89a13085 ++IDEVICERESTORE_VERSION := 1.0.0+git20210629.$(shell echo $(IDEVICERESTORE_COMMIT) | cut -c -7) + DEB_IDEVICERESTORE_V ?= $(IDEVICERESTORE_VERSION) + + idevicerestore-setup: setup diff --git a/makefiles/img4tool.mk b/makefiles/img4tool.mk -index 36ef26d..8b028de 100644 +index 716d359..62dfacd 100644 --- a/makefiles/img4tool.mk +++ b/makefiles/img4tool.mk -@@ -20,12 +20,14 @@ img4tool: - else +@@ -3,9 +3,9 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += img4tool +-IMG4TOOL_VERSION := 197 +-IMG4TOOL_COMMIT := aca6cf005c94caf135023263cbb5c61a0081804f +-DEB_IMG4TOOL_V ?= $(IMG4TOOL_VERSION)-1 ++IMG4TOOL_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.img4tool.version' | tr -d '\n') ++IMG4TOOL_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.img4tool.commit' | tr -d '\n') ++DEB_IMG4TOOL_V ?= $(IMG4TOOL_VERSION) + + img4tool-setup: setup + $(call GITHUB_ARCHIVE,tihmstar,img4tool,$(IMG4TOOL_VERSION),$(IMG4TOOL_VERSION)) +@@ -21,37 +21,29 @@ else img4tool: img4tool-setup openssl libplist libgeneral cd $(BUILD_WORK)/img4tool && ./autogen.sh \ -- $(DEFAULT_CONFIGURE_FLAGS) + $(DEFAULT_CONFIGURE_FLAGS) - +$(MAKE) -C $(BUILD_WORK)/img4tool -+ $(DEFAULT_CONFIGURE_FLAGS) \ -+ --disable-shared +$(MAKE) -C $(BUILD_WORK)/img4tool install \ DESTDIR="$(BUILD_STAGE)/img4tool" +$(MAKE) -C $(BUILD_WORK)/img4tool install \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/img4tool/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + img4tool-package: img4tool-stage + # img4tool.mk Package Structure + rm -rf $(BUILD_DIST)/*img4tool*/ +- mkdir -p $(BUILD_DIST)/{img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin,libimg4tool0/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib,libimg4tool-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{lib/pkgconfig,include}} ++ mkdir -p $(BUILD_DIST)/libimg4tool-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/img4tool} + +- # img4tool.mk Prep img4tool +- cp -a $(BUILD_STAGE)/img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/img4tool $(BUILD_DIST)/img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin +- +- # img4tool.mk Prep libimg4tool0 +- cp -a $(BUILD_STAGE)/img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libimg4tool.0.dylib $(BUILD_DIST)/libimg4tool0/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # img4tool.mk Prep libimg4tool-dev +- cp -a $(BUILD_STAGE)/img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/{libimg4tool.dylib,pkgconfig} $(BUILD_DIST)/libimg4tool-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/img4tool $(BUILD_DIST)/libimg4tool-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include ++ # img4tool.mk Prep libimg4tool-proc ++ cp -a $(BUILD_STAGE)/img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libimg4tool-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/img4tool/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libimg4tool-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libimg4tool-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/img4tool/.build_complete + + # img4tool.mk Sign +- $(call SIGN,img4tool,general.xml) +- $(call SIGN,libimg4tool0,general.xml) ++ $(call SIGN,libimg4tool-proc,general.xml) + + # img4tool.mk Make .debs +- $(call PACK,img4tool,DEB_IMG4TOOL_V) +- $(call PACK,libimg4tool0,DEB_IMG4TOOL_V) +- $(call PACK,libimg4tool-dev,DEB_IMG4TOOL_V) ++ $(call PACK,libimg4tool-proc,DEB_IMG4TOOL_V) + + # img4tool.mk Build cleanup + rm -rf $(BUILD_DIST)/*img4tool*/ diff --git a/makefiles/libfragmentzip.mk b/makefiles/libfragmentzip.mk -index 7dcbcc8..82b6b87 100644 +index 47a712a..ad03b83 100644 --- a/makefiles/libfragmentzip.mk +++ b/makefiles/libfragmentzip.mk -@@ -19,16 +19,19 @@ ifneq ($(wildcard $(BUILD_WORK)/libfragmentzip/.build_complete),) +@@ -3,13 +3,13 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libfragmentzip +-LIBFRAGMENTZIP_VERSION := 60 +-LIBFRAGMENTZIP_COMMIT := 120447d0f410dffb49948fa155467fc5d91ca3c8 +-DEB_LIBFRAGMENTZIP_V ?= $(LIBFRAGMENTZIP_VERSION)-3 ++LIBFRAGMENTZIP_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libfragmentzip.version' | tr -d '\n') ++LIBFRAGMENTZIP_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libfragmentzip.commit' | tr -d '\n') ++DEB_LIBFRAGMENTZIP_V ?= $(LIBFRAGMENTZIP_VERSION) + + libfragmentzip-setup: setup +- $(call GITHUB_ARCHIVE,tihmstar,libfragmentzip,$(LIBFRAGMENTZIP_VERSION),$(LIBFRAGMENTZIP_VERSION)) +- $(call EXTRACT_TAR,libfragmentzip-$(LIBFRAGMENTZIP_VERSION).tar.gz,libfragmentzip-$(LIBFRAGMENTZIP_VERSION),libfragmentzip) ++ $(call GITHUB_ARCHIVE,tihmstar,libfragmentzip,$(LIBFRAGMENTZIP_COMMIT),$(LIBFRAGMENTZIP_COMMIT)) ++ $(call EXTRACT_TAR,libfragmentzip-$(LIBFRAGMENTZIP_COMMIT).tar.gz,libfragmentzip-$(LIBFRAGMENTZIP_COMMIT),libfragmentzip) + + $(SED) -i 's/@libz_requires@//;s/\(Libs:.*\)/\1 -lz/' $(BUILD_WORK)/libfragmentzip/libfragmentzip.pc.in + $(SED) -i 's/git rev\-list \-\-count HEAD/printf ${LIBFRAGMENTZIP_VERSION}/g' $(BUILD_WORK)/libfragmentzip/configure.ac +@@ -19,39 +19,38 @@ ifneq ($(wildcard $(BUILD_WORK)/libfragmentzip/.build_complete),) libfragmentzip: @echo "Using previously built libfragmentzip." else @@ -286,101 +686,310 @@ index 7dcbcc8..82b6b87 100644 +libfragmentzip: libfragmentzip-setup libgeneral libzip cd $(BUILD_WORK)/libfragmentzip && ./autogen.sh \ $(DEFAULT_CONFIGURE_FLAGS) \ -- zlib_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lz" \ -- zlib_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" ++ curl_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lz" \ ++ curl_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" \ + zlib_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lz" \ + zlib_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" - +$(MAKE) -C $(BUILD_WORK)/libfragmentzip -+ --disable-shared \ -+ curl_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lcurl" \ -+ curl_CFLAGS="$(CFLAGS)" +$(MAKE) -C $(BUILD_WORK)/libfragmentzip install \ DESTDIR="$(BUILD_STAGE)/libfragmentzip" +$(MAKE) -C $(BUILD_WORK)/libfragmentzip install \ DESTDIR="$(BUILD_BASE)" -+ $(SED) -i '8d' $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/pkgconfig/libfragmentzip.pc -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libfragmentzip/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libfragmentzip-package: libfragmentzip-stage + # libfragmentzip.mk Package Structure +- rm -rf $(BUILD_DIST)/libfragmentzip{0,-dev} +- mkdir -p $(BUILD_DIST)/libfragmentzip{0,-dev}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib ++ rm -rf $(BUILD_DIST)/libfragmentzip-proc ++ mkdir -p $(BUILD_DIST)/libfragmentzip-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libfragmentzip} + +- # libfragmentzip.mk Prep libfragmentzip0 +- cp -a $(BUILD_STAGE)/libfragmentzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libfragmentzip.0.dylib $(BUILD_DIST)/libfragmentzip0/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libfragmentzip.mk Prep libfragmentzip-dev +- cp -a $(BUILD_STAGE)/libfragmentzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/!(libfragmentzip.0.dylib) $(BUILD_DIST)/libfragmentzip-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libfragmentzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libfragmentzip-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # libfragmentzip.mk Prep libfragmentzip-proc ++ cp -a $(BUILD_STAGE)/libfragmentzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libfragmentzip-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libfragmentzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libfragmentzip-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libfragmentzip-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libfragmentzip/.build_complete + + # libfragmentzip.mk Sign +- $(call SIGN,libfragmentzip0,general.xml) ++ $(call SIGN,libfragmentzip-proc,general.xml) + + # libfragmentzip.mk Make .debs +- $(call PACK,libfragmentzip0,DEB_LIBFRAGMENTZIP_V) +- $(call PACK,libfragmentzip-dev,DEB_LIBFRAGMENTZIP_V) ++ $(call PACK,libfragmentzip-proc,DEB_LIBFRAGMENTZIP_V) + + # libfragmentzip.mk Build cleanup +- rm -rf $(BUILD_DIST)/libfragmentzip{0,-dev} ++ rm -rf $(BUILD_DIST)/libfragmentzip-proc + + .PHONY: libfragmentzip libfragmentzip-package diff --git a/makefiles/libgeneral.mk b/makefiles/libgeneral.mk -index 0c1147c..5f44723 100644 +index a724ac5..9e03435 100644 --- a/makefiles/libgeneral.mk +++ b/makefiles/libgeneral.mk -@@ -20,12 +20,14 @@ libgeneral: - else +@@ -3,13 +3,13 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libgeneral +-LIBGENERAL_VERSION := 54 +-LIBGENERAL_COMMIT := b04a27d0584c4c10c4b376325bb928c0ad12e285 +-DEB_LIBGENERAL_V ?= $(LIBGENERAL_VERSION)-1 ++LIBGENERAL_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libgeneral.version' | tr -d '\n') ++LIBGENERAL_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libgeneral.commit' | tr -d '\n') ++DEB_LIBGENERAL_V ?= $(LIBGENERAL_VERSION) + + libgeneral-setup: setup +- $(call GITHUB_ARCHIVE,tihmstar,libgeneral,$(LIBGENERAL_VERSION),$(LIBGENERAL_VERSION)) +- $(call EXTRACT_TAR,libgeneral-$(LIBGENERAL_VERSION).tar.gz,libgeneral-$(LIBGENERAL_VERSION),libgeneral) ++ $(call GITHUB_ARCHIVE,tihmstar,libgeneral,$(LIBGENERAL_COMMIT),$(LIBGENERAL_COMMIT)) ++ $(call EXTRACT_TAR,libgeneral-$(LIBGENERAL_COMMIT).tar.gz,libgeneral-$(LIBGENERAL_COMMIT),libgeneral) + + $(SED) -i 's/git rev\-list \-\-count HEAD/printf ${LIBGENERAL_VERSION}/g' $(BUILD_WORK)/libgeneral/configure.ac + $(SED) -i 's/git rev\-parse HEAD/printf ${LIBGENERAL_COMMIT}/g' $(BUILD_WORK)/libgeneral/configure.ac +@@ -21,34 +21,31 @@ else libgeneral: libgeneral-setup cd $(BUILD_WORK)/libgeneral && ./autogen.sh \ -- $(DEFAULT_CONFIGURE_FLAGS) + $(DEFAULT_CONFIGURE_FLAGS) - +$(MAKE) -C $(BUILD_WORK)/libgeneral -+ $(DEFAULT_CONFIGURE_FLAGS) \ -+ --disable-shared +$(MAKE) -C $(BUILD_WORK)/libgeneral install \ DESTDIR="$(BUILD_STAGE)/libgeneral" +$(MAKE) -C $(BUILD_WORK)/libgeneral install \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libgeneral/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libgeneral-package: libgeneral-stage + # libgeneral.mk Package Structure +- rm -rf $(BUILD_DIST)/libgeneral{0,-dev} +- mkdir -p $(BUILD_DIST)/libgeneral{0,-dev}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib ++ rm -rf $(BUILD_DIST)/libgeneral-proc ++ mkdir -p $(BUILD_DIST)/libgeneral-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libgeneral} + +- # libgeneral.mk Prep libgeneral0 +- cp -a $(BUILD_STAGE)/libgeneral/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libgeneral.0.dylib $(BUILD_DIST)/libgeneral0/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libgeneral.mk Prep libgeneral-dev +- cp -a $(BUILD_STAGE)/libgeneral/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/!(libgeneral.0.dylib) $(BUILD_DIST)/libgeneral-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libgeneral/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libgeneral-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # libgeneral.mk Prep libgeneral-proc ++ cp -a $(BUILD_STAGE)/libgeneral/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libgeneral-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libgeneral/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libgeneral-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libgeneral-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libgeneral/.build_complete + + # libgeneral.mk Sign +- $(call SIGN,libgeneral0,general.xml) ++ $(call SIGN,libgeneral-proc,general.xml) + + # libgeneral.mk Make .debs +- $(call PACK,libgeneral0,DEB_LIBGENERAL_V) +- $(call PACK,libgeneral-dev,DEB_LIBGENERAL_V) ++ $(call PACK,libgeneral-proc,DEB_LIBGENERAL_V) + + # libgeneral.mk Build cleanup +- rm -rf $(BUILD_DIST)/libgeneral{0,-dev} ++ rm -rf $(BUILD_DIST)/libgeneral-proc + + .PHONY: libgeneral libgeneral-package +diff --git a/makefiles/libideviceactivation.mk b/makefiles/libideviceactivation.mk +index f514611..0a5cd93 100644 +--- a/makefiles/libideviceactivation.mk ++++ b/makefiles/libideviceactivation.mk +@@ -3,19 +3,20 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libideviceactivation +-LIBIDEVICEACTIVATION_VERSION := 1.1.1 +-DEB_LIBIDEVICEACTIVATION_V ?= $(LIBIDEVICEACTIVATION_VERSION)-1 ++LIBIDEVICEACTIVATION_COMMIT := b2d7536e612b8c98d669df7d92520c107104efa0 ++LIBIDEVICEACTIVATION_VERSION := 1.1.1+git20210629.$(shell echo $(LIBIDEVICEACTIVATION_COMMIT) | cut -c -7) ++DEB_LIBIDEVICEACTIVATION_V ?= $(LIBIDEVICEACTIVATION_VERSION) + + libideviceactivation-setup: setup +- wget -q -nc -P $(BUILD_SOURCE) https://github.com/libimobiledevice/libideviceactivation/releases/download/$(LIBIDEVICEACTIVATION_VERSION)/libideviceactivation-$(LIBIDEVICEACTIVATION_VERSION).tar.bz2 +- $(call EXTRACT_TAR,libideviceactivation-$(LIBIDEVICEACTIVATION_VERSION).tar.bz2,libideviceactivation-$(LIBIDEVICEACTIVATION_VERSION),libideviceactivation) ++ $(call GITHUB_ARCHIVE,libimobiledevice,libideviceactivation,$(LIBIDEVICEACTIVATION_COMMIT),$(LIBIDEVICEACTIVATION_COMMIT)) ++ $(call EXTRACT_TAR,libideviceactivation-$(LIBIDEVICEACTIVATION_COMMIT).tar.gz,libideviceactivation-$(LIBIDEVICEACTIVATION_COMMIT),libideviceactivation) + + ifneq ($(wildcard $(BUILD_WORK)/libideviceactivation/.build_complete),) + libideviceactivation: + @echo "Using previously built libideviceactivation." + else + libideviceactivation: libideviceactivation-setup libplist libimobiledevice curl +- cd $(BUILD_WORK)/libideviceactivation && ./configure -C \ ++ cd $(BUILD_WORK)/libideviceactivation && ./autogen.sh -C \ + $(DEFAULT_CONFIGURE_FLAGS) \ + libxml2_CFLAGS=-I$(TARGET_SYSROOT)/usr/include/libxml2 \ + libxml2_LIBS=-lxml2 +@@ -24,7 +25,7 @@ libideviceactivation: libideviceactivation-setup libplist libimobiledevice curl + DESTDIR=$(BUILD_STAGE)/libideviceactivation + +$(MAKE) -C $(BUILD_WORK)/libideviceactivation install \ + DESTDIR=$(BUILD_BASE) +- $(call AFTER_BUILD) ++ $(call AFTER_BUILD) + endif + + libideviceactivation-package: libideviceactivation-stage diff --git a/makefiles/libimobiledevice.mk b/makefiles/libimobiledevice.mk -index aede911..9d885b2 100644 +index 8afda8c..7f1168a 100644 --- a/makefiles/libimobiledevice.mk +++ b/makefiles/libimobiledevice.mk -@@ -19,11 +19,18 @@ libimobiledevice: libimobiledevice-setup libusbmuxd libplist openssl +@@ -3,8 +3,8 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libimobiledevice +-LIBIMOBILEDEVICE_COMMIT := 25059d4c7d75e03aab516af2929d7c6e6d4c17de +-LIBIMOBILEDEVICE_VERSION := 1.3.0+git20210304.$(shell echo $(LIBIMOBILEDEVICE_COMMIT) | cut -c -7) ++LIBIMOBILEDEVICE_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libimobiledevice.commit' | tr -d '\n') ++LIBIMOBILEDEVICE_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libimobiledevice.version2' | tr -d '\n').$(shell echo $(LIBIMOBILEDEVICE_COMMIT) | cut -c -7) + DEB_LIBIMOBILEDEVICE_V ?= $(LIBIMOBILEDEVICE_VERSION) + + libimobiledevice-setup: setup +@@ -19,41 +19,39 @@ libimobiledevice: libimobiledevice-setup libusbmuxd libplist openssl cd $(BUILD_WORK)/libimobiledevice && ./autogen.sh \ $(DEFAULT_CONFIGURE_FLAGS) \ --without-cython -+ cd $(BUILD_WORK)/libimobiledevice/include -+ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice -+ cd $(BUILD_WORK)/libimobiledevice/common -+ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice -+ cd $(BUILD_WORK)/libimobiledevice/src - +$(MAKE) -C $(BUILD_WORK)/libimobiledevice - +$(MAKE) -C $(BUILD_WORK)/libimobiledevice install \ -- DESTDIR="$(BUILD_STAGE)/libimobiledevice" -+ DESTDIR="$(BUILD_STAGE)" - +$(MAKE) -C $(BUILD_WORK)/libimobiledevice install \ +- +$(MAKE) -C $(BUILD_WORK)/libimobiledevice +- +$(MAKE) -C $(BUILD_WORK)/libimobiledevice install \ ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice/include install \ + DESTDIR="$(BUILD_STAGE)/libimobiledevice" +- +$(MAKE) -C $(BUILD_WORK)/libimobiledevice install \ ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice/common install \ ++ DESTDIR="$(BUILD_STAGE)/libimobiledevice" ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice/src install \ ++ DESTDIR="$(BUILD_STAGE)/libimobiledevice" ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice/include install \ ++ DESTDIR="$(BUILD_BASE)" ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice/common install \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libimobiledevice/.build_complete ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice/src install \ ++ DESTDIR="$(BUILD_BASE)" ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libimobiledevice-package: libimobiledevice-stage + # libimobiledevice.mk Package Structure +- rm -rf $(BUILD_DIST)/libimobiledevice{6,-dev,-utils} +- mkdir -p $(BUILD_DIST)/libimobiledevice6/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libimobiledevice-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libimobiledevice-utils/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # libimobiledevice.mk Prep libimobiledevice6 +- cp -a $(BUILD_STAGE)/libimobiledevice/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libimobiledevice-1.0.6.dylib $(BUILD_DIST)/libimobiledevice6/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libimobiledevice.mk Prep libimobiledevice-dev +- cp -a $(BUILD_STAGE)/libimobiledevice/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/{pkgconfig,libimobiledevice-1.0.{a,dylib}} $(BUILD_DIST)/libimobiledevice-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libimobiledevice/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libimobiledevice-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ rm -rf $(BUILD_DIST)/libimobiledevice-proc ++ mkdir -p $(BUILD_DIST)/libimobiledevice-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libimobiledevice} + +- # libimobiledevice.mk Prep libimobiledevice-utils +- cp -a $(BUILD_STAGE)/libimobiledevice/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{bin,share} $(BUILD_DIST)/libimobiledevice-utils/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # libimobiledevice.mk Prep libimobiledevice-proc ++ cp -a $(BUILD_STAGE)/libimobiledevice/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libimobiledevice-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libimobiledevice/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libimobiledevice-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libimobiledevice-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libimobiledevice/.build_complete + + # libimobiledevice.mk Sign +- $(call SIGN,libimobiledevice6,general.xml) +- $(call SIGN,libimobiledevice-utils,general.xml) ++ $(call SIGN,libimobiledevice-proc,general.xml) + + # libimobiledevice.mk Make .debs +- $(call PACK,libimobiledevice6,DEB_LIBIMOBILEDEVICE_V) +- $(call PACK,libimobiledevice-dev,DEB_LIBIMOBILEDEVICE_V) +- $(call PACK,libimobiledevice-utils,DEB_LIBIMOBILEDEVICE_V) ++ $(call PACK,libimobiledevice-proc,DEB_LIBIMOBILEDEVICE_V) + + # libimobiledevice.mk Build cleanup +- rm -rf $(BUILD_DIST)/libimobiledevice{6,-dev,-utils} ++ rm -rf $(BUILD_DIST)/libimobiledevice-proc + + .PHONY: libimobiledevice libimobiledevice-package diff --git a/makefiles/libinsn.mk b/makefiles/libinsn.mk -index daeed3e..aa5f330 100644 +index ced297d..5941db7 100644 --- a/makefiles/libinsn.mk +++ b/makefiles/libinsn.mk -@@ -20,12 +20,14 @@ libinsn: - else +@@ -3,9 +3,9 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libinsn +-LIBINSN_VERSION := 35 +-LIBINSN_COMMIT := 64124fd2b1b57d7b76a0e2b0c06434a7048758d2 +-DEB_LIBINSN_V ?= $(LIBINSN_VERSION)-1 ++LIBINSN_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libinsn.version' | tr -d '\n') ++LIBINSN_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libinsn.commit' | tr -d '\n') ++DEB_LIBINSN_V ?= $(LIBINSN_VERSION) + + libinsn-setup: setup + $(call GITHUB_ARCHIVE,tihmstar,libinsn,$(LIBINSN_COMMIT),$(LIBINSN_COMMIT)) +@@ -21,34 +21,31 @@ else libinsn: libinsn-setup libgeneral cd $(BUILD_WORK)/libinsn && ./autogen.sh \ -- $(DEFAULT_CONFIGURE_FLAGS) + $(DEFAULT_CONFIGURE_FLAGS) - +$(MAKE) -C $(BUILD_WORK)/libinsn -+ $(DEFAULT_CONFIGURE_FLAGS) \ -+ --disable-shared +$(MAKE) -C $(BUILD_WORK)/libinsn install \ DESTDIR="$(BUILD_STAGE)/libinsn" +$(MAKE) -C $(BUILD_WORK)/libinsn install \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libinsn/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libinsn-package: libinsn-stage + # libinsn.mk Package Structure +- rm -rf $(BUILD_DIST)/libinsn{0,-dev} +- mkdir -p $(BUILD_DIST)/libinsn{0,-dev}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib ++ rm -rf $(BUILD_DIST)/libinsn-proc ++ mkdir -p $(BUILD_DIST)/libinsn-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libinsn} + +- # libinsn.mk Prep libinsn0 +- cp -a $(BUILD_STAGE)/libinsn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libinsn.0.dylib $(BUILD_DIST)/libinsn0/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libinsn.mk Prep libinsn-dev +- cp -a $(BUILD_STAGE)/libinsn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/!(libinsn.0.dylib) $(BUILD_DIST)/libinsn-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libinsn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libinsn-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # libinsn.mk Prep libinsn-proc ++ cp -a $(BUILD_STAGE)/libinsn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libinsn-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libinsn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libinsn-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libinsn-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libinsn/.build_complete + + # libinsn.mk Sign +- $(call SIGN,libinsn0,general.xml) ++ $(call SIGN,libinsn-proc,general.xml) + + # libinsn.mk Make .debs +- $(call PACK,libinsn0,DEB_LIBINSN_V) +- $(call PACK,libinsn-dev,DEB_LIBINSN_V) ++ $(call PACK,libinsn-proc,DEB_LIBINSN_V) + + # libinsn.mk Build cleanup +- rm -rf $(BUILD_DIST)/libinsn{0,-dev} ++ rm -rf $(BUILD_DIST)/libinsn-proc + + .PHONY: libinsn libinsn-package diff --git a/makefiles/libipatcher.mk b/makefiles/libipatcher.mk -index 73364b3..ec56ae0 100644 +index e6021ab..bf1cef2 100644 --- a/makefiles/libipatcher.mk +++ b/makefiles/libipatcher.mk -@@ -3,13 +3,13 @@ $(error Use the main Makefile) +@@ -3,17 +3,17 @@ $(error Use the main Makefile) endif SUBPROJECTS += libipatcher -LIBIPATCHER_VERSION := 81 -LIBIPATCHER_COMMIT := ad44d0da23f5120c3c77a72062bd627c50f37e71 -DEB_LIBIPATCHER_V ?= $(LIBIPATCHER_VERSION)-1 -+LIBIPATCHER_VERSION := 83 -+LIBIPATCHER_COMMIT := 49d26904d0c1cf001effb3aa07c3be20225c3b52 ++LIBIPATCHER_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libipatcher.version' | tr -d '\n') ++LIBIPATCHER_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libipatcher.commit' | tr -d '\n') +DEB_LIBIPATCHER_V ?= $(LIBIPATCHER_VERSION) libipatcher-setup: setup @@ -389,9 +998,14 @@ index 73364b3..ec56ae0 100644 + $(call GITHUB_ARCHIVE,Cryptiiiic,libipatcher,$(LIBIPATCHER_COMMIT),$(LIBIPATCHER_COMMIT)) + $(call EXTRACT_TAR,libipatcher-$(LIBIPATCHER_COMMIT).tar.gz,libipatcher-$(LIBIPATCHER_COMMIT),libipatcher) ++ rm -rf $(BUILD_WORK)/libipatcher/external/{jssy,iBoot32Patcher} $(call GITHUB_ARCHIVE,tihmstar,iBoot32Patcher,master,master) $(call GITHUB_ARCHIVE,tihmstar,jssy,master,master) -@@ -27,9 +27,10 @@ ifneq ($(wildcard $(BUILD_WORK)/libipatcher/.build_complete),) +- rm -rf $(BUILD_WORK)/libipatcher/external/{jssy,iBoot32Patcher} + $(call EXTRACT_TAR,jssy-master.tar.gz,jssy-master,libipatcher/external/jssy) + $(call EXTRACT_TAR,iBoot32Patcher-master.tar.gz,iBoot32Patcher-master,libipatcher/external/iBoot32Patcher) + +@@ -27,41 +27,38 @@ ifneq ($(wildcard $(BUILD_WORK)/libipatcher/.build_complete),) libipatcher: @echo "Using previously built libipatcher." else @@ -399,50 +1013,147 @@ index 73364b3..ec56ae0 100644 +libipatcher: libipatcher-setup libpng16 openssl img4tool liboffsetfinder64 libgeneral libplist xpwn cd $(BUILD_WORK)/libipatcher && ./autogen.sh \ $(DEFAULT_CONFIGURE_FLAGS) \ -+ --disable-shared \ CFLAGS="$(CFLAGS) -I$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn" \ CPPFLAGS="$(CPPFLAGS) -I$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn" \ LDFLAGS="$(LDFLAGS) -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn" -@@ -39,6 +40,8 @@ libipatcher: libipatcher-setup libpng16 openssl img4tool liboffsetfinder64 libge +- +$(MAKE) -C $(BUILD_WORK)/libipatcher \ +- LIBS="-lcurl" + +$(MAKE) -C $(BUILD_WORK)/libipatcher install \ ++ LIBS="-lcurl" \ DESTDIR="$(BUILD_STAGE)/libipatcher" +$(MAKE) -C $(BUILD_WORK)/libipatcher install \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libipatcher/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libipatcher-package: libipatcher-stage + # libipatcher.mk Package Structure +- rm -rf $(BUILD_DIST)/libipatcher{0,-dev} +- mkdir -p $(BUILD_DIST)/libipatcher{0,-dev}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libipatcher.mk Prep libipatcher0 +- cp -a $(BUILD_STAGE)/libipatcher/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libipatcher.0.dylib $(BUILD_DIST)/libipatcher0/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib ++ rm -rf $(BUILD_DIST)/libipatcher-proc ++ mkdir -p $(BUILD_DIST)/libipatcher-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libipatcher} + +- # libipatcher.mk Prep libipatcher-dev +- cp -a $(BUILD_STAGE)/libipatcher/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/!(libipatcher.0.dylib) $(BUILD_DIST)/libipatcher-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libipatcher/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libipatcher-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # libipatcher.mk Prep libipatcher-proc ++ cp -a $(BUILD_STAGE)/libipatcher/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libipatcher-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libipatcher/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libipatcher-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libipatcher-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libipatcher/.build_complete + + # libipatcher.mk Sign +- $(call SIGN,libipatcher0,general.xml) ++ $(call SIGN,libipatcher-proc,general.xml) + + # libipatcher.mk Make .debs +- $(call PACK,libipatcher0,DEB_LIBIPATCHER_V) +- $(call PACK,libipatcher-dev,DEB_LIBIPATCHER_V) ++ $(call PACK,libipatcher-proc,DEB_LIBIPATCHER_V) + + # libipatcher.mk Build cleanup +- rm -rf $(BUILD_DIST)/libipatcher{0,-dev} ++ rm -rf $(BUILD_DIST)/libipatcher-proc + + .PHONY: libipatcher libipatcher-package diff --git a/makefiles/libirecovery.mk b/makefiles/libirecovery.mk -index d261c12..81e63c8 100644 +index dcf689a..cb4a686 100644 --- a/makefiles/libirecovery.mk +++ b/makefiles/libirecovery.mk -@@ -15,16 +15,20 @@ ifneq ($(wildcard $(BUILD_WORK)/libirecovery/.build_complete),) +@@ -3,8 +3,8 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libirecovery +-LIBIRECOVERY_COMMIT := 47934949e0015165a4562b08e824adb3f664c0ea +-LIBIRECOVERY_VERSION := 1.0.0+git20210526.$(shell echo $(LIBIRECOVERY_COMMIT) | cut -c -7) ++LIBIRECOVERY_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libirecovery.commit' | tr -d '\n') ++LIBIRECOVERY_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libirecovery.version2' | tr -d '\n').$(shell echo $(LIBIRECOVERY_COMMIT) | cut -c -7) + DEB_LIBIRECOVERY_V ?= $(LIBIRECOVERY_VERSION) + + libirecovery-setup: setup +@@ -15,46 +15,52 @@ ifneq ($(wildcard $(BUILD_WORK)/libirecovery/.build_complete),) libirecovery: @echo "Using previously built libirecovery." else -libirecovery: libirecovery-setup readline libusb -+libirecovery: libirecovery-setup libimobiledevice ++ifeq ($(MEMO_TARGET),darwin-amd64) ++$(warning Building with IOKit) ++ENABLE_IOKIT := yes ++else ifeq ($(MEMO_TARGET),darwin-arm64) ++$(warning Building with IOKit) ++ENABLE_IOKIT := yes ++else ifeq ($(MEMO_TARGET),darwin-arm64e) ++$(warning Building with IOKit) ++ENABLE_IOKIT := yes ++else ++$(warning Not building with IOKit) ++ENABLE_IOKIT := no ++endif ++libirecovery: libirecovery-setup cd $(BUILD_WORK)/libirecovery && ./autogen.sh \ $(DEFAULT_CONFIGURE_FLAGS) \ - --with-iokit=no - +$(MAKE) -C $(BUILD_WORK)/libirecovery \ - CFLAGS="$(CFLAGS) -I$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/libusb-1.0" -+ --with-iokit=yes \ -+ --disable-shared -+ cd $(BUILD_WORK)/libirecovery/include -+ +$(MAKE) -C $(BUILD_WORK)/libirecovery -+ cd $(BUILD_WORK)/libirecovery/src - +$(MAKE) -C $(BUILD_WORK)/libirecovery install \ +- +$(MAKE) -C $(BUILD_WORK)/libirecovery install \ ++ --with-iokit=$(ENABLE_IOKIT) ++ +$(MAKE) -C $(BUILD_WORK)/libirecovery/include install \ ++ DESTDIR=$(BUILD_STAGE)/libirecovery ++ +$(MAKE) -C $(BUILD_WORK)/libirecovery/src install \ DESTDIR=$(BUILD_STAGE)/libirecovery - +$(MAKE) -C $(BUILD_WORK)/libirecovery install \ +- +$(MAKE) -C $(BUILD_WORK)/libirecovery install \ ++ +$(MAKE) -C $(BUILD_WORK)/libirecovery/include install \ DESTDIR=$(BUILD_BASE) -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libirecovery/.build_complete ++ +$(MAKE) -C $(BUILD_WORK)/libirecovery/src install \ ++ DESTDIR=$(BUILD_BASE) ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libirecovery-package: libirecovery-stage + # libirecovery.mk Package Structure +- rm -rf $(BUILD_DIST)/libirecovery{3,-dev,-utils} +- mkdir -p $(BUILD_DIST)/libirecovery3/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libirecovery-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libirecovery-utils/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # libirecovery.mk Prep libirecovery3 +- cp -a $(BUILD_STAGE)/libirecovery/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libirecovery-1.0.3.dylib $(BUILD_DIST)/libirecovery3/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/ +- +- # libirecovery.mk Prep libirecovery-dev +- cp -a $(BUILD_STAGE)/libirecovery/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/{pkgconfig,libirecovery-1.0.{a,dylib}} $(BUILD_DIST)/libirecovery-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libirecovery/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libirecovery-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ rm -rf $(BUILD_DIST)/libirecovery-proc ++ mkdir -p $(BUILD_DIST)/libirecovery-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libirecovery} + +- # libirecovery.mk Prep libirecovery-utils +- cp -a $(BUILD_STAGE)/libirecovery/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin $(BUILD_DIST)/libirecovery-utils/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # libirecovery.mk Prep libirecovery-proc ++ cp -a $(BUILD_STAGE)/libirecovery/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libirecovery-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libirecovery/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libirecovery-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libirecovery-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libirecovery/.build_complete + + # libirecovery.mk Sign +- $(call SIGN,libirecovery3,general.xml) +- $(call SIGN,libirecovery-utils,general.xml) ++ $(call SIGN,libirecovery-proc,general.xml) + + # libirecovery.mk Make .debs +- $(call PACK,libirecovery3,DEB_LIBIRECOVERY_V) +- $(call PACK,libirecovery-dev,DEB_LIBIRECOVERY_V) +- $(call PACK,libirecovery-utils,DEB_LIBIRECOVERY_V) ++ $(call PACK,libirecovery-proc,DEB_LIBIRECOVERY_V) + + # libirecovery.mk Build cleanup +- rm -rf $(BUILD_DIST)/libirecovery{3,-dev,-utils} ++ rm -rf $(BUILD_DIST)/libirecovery-proc + + .PHONY: libirecovery libirecovery-package diff --git a/makefiles/liboffsetfinder64.mk b/makefiles/liboffsetfinder64.mk -index 1b8a892..174ffff 100644 +index 44e6c23..528a7ff 100644 --- a/makefiles/liboffsetfinder64.mk +++ b/makefiles/liboffsetfinder64.mk @@ -3,12 +3,12 @@ $(error Use the main Makefile) @@ -452,8 +1163,8 @@ index 1b8a892..174ffff 100644 -LIBOFFSETFINDER64_VERSION := 132 -LIBOFFSETFINDER64_COMMIT := 35d3411bf675a83bdb768bc0ec26fe2344be16f3 -DEB_LIBOFFSETFINDER64_V ?= $(LIBOFFSETFINDER64_VERSION)-1 -+LIBOFFSETFINDER64_VERSION := 138 -+LIBOFFSETFINDER64_COMMIT := 2954b9955526f324345531751f49814c98075767 ++LIBOFFSETFINDER64_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.liboffsetfinder64.version' | tr -d '\n') ++LIBOFFSETFINDER64_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.liboffsetfinder64.commit' | tr -d '\n') +DEB_LIBOFFSETFINDER64_V ?= $(LIBOFFSETFINDER64_VERSION) liboffsetfinder64-setup: setup @@ -462,170 +1173,503 @@ index 1b8a892..174ffff 100644 $(call EXTRACT_TAR,liboffsetfinder64-$(LIBOFFSETFINDER64_COMMIT).tar.gz,liboffsetfinder64-$(LIBOFFSETFINDER64_COMMIT),liboffsetfinder64) $(SED) -i 's/git rev\-list \-\-count HEAD/printf ${LIBOFFSETFINDER64_VERSION}/g' $(BUILD_WORK)/liboffsetfinder64/configure.ac -@@ -20,12 +20,14 @@ liboffsetfinder64: - else +@@ -21,34 +21,31 @@ else liboffsetfinder64: liboffsetfinder64-setup libgeneral libinsn img4tool openssl libplist cd $(BUILD_WORK)/liboffsetfinder64 && ./autogen.sh \ -- $(DEFAULT_CONFIGURE_FLAGS) + $(DEFAULT_CONFIGURE_FLAGS) - +$(MAKE) -C $(BUILD_WORK)/liboffsetfinder64 -+ $(DEFAULT_CONFIGURE_FLAGS) \ -+ --disable-shared +$(MAKE) -C $(BUILD_WORK)/liboffsetfinder64 install \ DESTDIR="$(BUILD_STAGE)/liboffsetfinder64" +$(MAKE) -C $(BUILD_WORK)/liboffsetfinder64 install \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/liboffsetfinder64/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + liboffsetfinder64-package: liboffsetfinder64-stage + # liboffsetfinder64.mk Package Structure +- rm -rf $(BUILD_DIST)/liboffsetfinder64-{0,dev} +- mkdir -p $(BUILD_DIST)/liboffsetfinder64-{0,dev}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib ++ rm -rf $(BUILD_DIST)/liboffsetfinder64-proc ++ mkdir -p $(BUILD_DIST)/liboffsetfinder64-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/liboffsetfinder64} + +- # liboffsetfinder64.mk Prep liboffsetfinder64-0 +- cp -a $(BUILD_STAGE)/liboffsetfinder64/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/liboffsetfinder64.0.dylib $(BUILD_DIST)/liboffsetfinder64-0/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # liboffsetfinder64.mk Prep liboffsetfinder64-dev +- cp -a $(BUILD_STAGE)/liboffsetfinder64/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/!(liboffsetfinder64.0.dylib) $(BUILD_DIST)/liboffsetfinder64-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/liboffsetfinder64/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/liboffsetfinder64-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # liboffsetfinder64.mk Prep liboffsetfinder64-proc ++ cp -a $(BUILD_STAGE)/liboffsetfinder64/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/liboffsetfinder64-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/liboffsetfinder64/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/liboffsetfinder64-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/liboffsetfinder64-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/liboffsetfinder64/.build_complete + + # liboffsetfinder64.mk Sign +- $(call SIGN,liboffsetfinder64-0,general.xml) ++ $(call SIGN,liboffsetfinder64-proc,general.xml) + + # liboffsetfinder64.mk Make .debs +- $(call PACK,liboffsetfinder64-0,DEB_LIBOFFSETFINDER64_V) +- $(call PACK,liboffsetfinder64-dev,DEB_LIBOFFSETFINDER64_V) ++ $(call PACK,liboffsetfinder64-proc,DEB_LIBOFFSETFINDER64_V) + + # liboffsetfinder64.mk Build cleanup +- rm -rf $(BUILD_DIST)/liboffsetfinder64-{0,dev} ++ rm -rf $(BUILD_DIST)/liboffsetfinder64-proc + + .PHONY: liboffsetfinder64 liboffsetfinder64-package diff --git a/makefiles/libplist.mk b/makefiles/libplist.mk -index 14a4b8d..4677b6b 100644 +index 3605151..4c5bc94 100644 --- a/makefiles/libplist.mk +++ b/makefiles/libplist.mk -@@ -17,12 +17,16 @@ else - libplist: libplist-setup +@@ -3,12 +3,13 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libplist +-LIBPLIST_VERSION := 2.2.0 ++LIBPLIST_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libplist.commit' | tr -d '\n') ++LIBPLIST_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libplist.version2' | tr -d '\n').$(shell echo $(LIBPLIST_COMMIT) | cut -c -7) + DEB_LIBPLIST_V ?= $(LIBPLIST_VERSION) + + libplist-setup: setup +- $(call GITHUB_ARCHIVE,libimobiledevice,libplist,$(LIBPLIST_VERSION),$(LIBPLIST_VERSION)) +- $(call EXTRACT_TAR,libplist-$(LIBPLIST_VERSION).tar.gz,libplist-$(LIBPLIST_VERSION),libplist) ++ $(call GITHUB_ARCHIVE,libimobiledevice,libplist,$(LIBPLIST_COMMIT),$(LIBPLIST_COMMIT)) ++ $(call EXTRACT_TAR,libplist-$(LIBPLIST_COMMIT).tar.gz,libplist-$(LIBPLIST_COMMIT),libplist) + + ifneq ($(wildcard $(BUILD_WORK)/libplist/.build_complete),) + libplist: +@@ -18,56 +19,33 @@ libplist: libplist-setup cd $(BUILD_WORK)/libplist && ./autogen.sh \ $(DEFAULT_CONFIGURE_FLAGS) \ -- --without-cython -+ --without-cython \ -+ --disable-shared || true -+ cat $(BUILD_WORK)/libplist/config.log - +$(MAKE) -C $(BUILD_WORK)/libplist + --without-cython +- +$(MAKE) -C $(BUILD_WORK)/libplist +$(MAKE) -C $(BUILD_WORK)/libplist install \ DESTDIR="$(BUILD_STAGE)/libplist" +$(MAKE) -C $(BUILD_WORK)/libplist install \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libplist/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libplist-package: .SHELLFLAGS=-O extglob -c + libplist-package: libplist-stage + # libplist.mk Package Structure +- rm -rf $(BUILD_DIST)/libplist{3,-dev,-utils} $(BUILD_DIST)/libplist++{3v5,-dev} +- mkdir -p $(BUILD_DIST)/libplist3/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libplist-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include/plist,lib/pkgconfig} \ +- $(BUILD_DIST)/libplist-utils/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) \ +- $(BUILD_DIST)/libplist++3v5/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libplist++-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include/plist,lib/pkgconfig} ++ rm -rf $(BUILD_DIST)/libplist-proc ++ mkdir -p $(BUILD_DIST)/libplist-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libplist} + +- # libplist.mk Prep libplist3 +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libplist-2.0.3.dylib $(BUILD_DIST)/libplist3/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib + +- # libplist.mk Prep libplist-dev +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/plist/plist.h $(BUILD_DIST)/libplist-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/plist +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libplist-2.0.{a,dylib} $(BUILD_DIST)/libplist-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/pkgconfig/libplist-2.0.pc $(BUILD_DIST)/libplist-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/pkgconfig +- +- # libplist.mk Prep libplist-utils +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{bin,share} $(BUILD_DIST)/libplist-utils/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # libplist.mk Prep libplist++3v5 +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libplist++-2.0.3.dylib $(BUILD_DIST)/libplist++3v5/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libplist.mk Prep libplist++-dev +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/plist/!(plist).h $(BUILD_DIST)/libplist++-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/plist +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libplist++-2.0.{a,dylib} $(BUILD_DIST)/libplist++-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/pkgconfig/libplist++-2.0.pc $(BUILD_DIST)/libplist++-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/pkgconfig ++ # libplist.mk Prep libplist-proc ++ cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libplist-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libplist/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libplist-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libplist-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libplist/.build_complete + + # libplist.mk Sign +- $(call SIGN,libplist3,general.xml) +- $(call SIGN,libplist-utils,general.xml) +- $(call SIGN,libplist++3v5,general.xml) ++ $(call SIGN,libplist-proc,general.xml) + + # libplist.mk Make .debs +- $(call PACK,libplist3,DEB_LIBPLIST_V) +- $(call PACK,libplist-dev,DEB_LIBPLIST_V) +- $(call PACK,libplist-utils,DEB_LIBPLIST_V) +- $(call PACK,libplist++3v5,DEB_LIBPLIST_V) +- $(call PACK,libplist++-dev,DEB_LIBPLIST_V) ++ $(call PACK,libplist-proc,DEB_LIBPLIST_V) + + # libplist.mk Build cleanup +- rm -rf $(BUILD_DIST)/libplist{3,-dev,-utils} $(BUILD_DIST)/libplist++{3v5,-dev} ++ rm -rf $(BUILD_DIST)/libplist-proc + + .PHONY: libplist libplist-package diff --git a/makefiles/libpng16.mk b/makefiles/libpng16.mk -index 4827b00..e3f9d60 100644 +index 48ea4fc..57b5fed 100644 --- a/makefiles/libpng16.mk +++ b/makefiles/libpng16.mk -@@ -18,12 +18,15 @@ libpng16: - else +@@ -3,8 +3,8 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libpng16 +-LIBPNG16_VERSION := 1.6.37 +-DEB_LIBPNG16_V ?= $(LIBPNG16_VERSION)-2 ++LIBPNG16_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libpng16.version2' | tr -d '\n') ++DEB_LIBPNG16_V ?= $(LIBPNG16_VERSION) + + libpng16-setup: setup + wget -q -nc -P $(BUILD_SOURCE) https://sourceforge.net/projects/libpng/files/libpng16/$(LIBPNG16_VERSION)/libpng-$(LIBPNG16_VERSION).tar.xz +@@ -20,43 +20,31 @@ else libpng16: libpng16-setup cd $(BUILD_WORK)/libpng16 && ./configure -C \ -- $(DEFAULT_CONFIGURE_FLAGS) -+ $(DEFAULT_CONFIGURE_FLAGS) \ -+ --disable-shared - +$(MAKE) -C $(BUILD_WORK)/libpng16 + $(DEFAULT_CONFIGURE_FLAGS) +- +$(MAKE) -C $(BUILD_WORK)/libpng16 +$(MAKE) -C $(BUILD_WORK)/libpng16 install \ DESTDIR=$(BUILD_STAGE)/libpng16 +$(MAKE) -C $(BUILD_WORK)/libpng16 install \ DESTDIR=$(BUILD_BASE) -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libpng16/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + libpng16-package: libpng16-stage + # libpng16.mk Package Structure +- rm -rf $(BUILD_DIST)/libpng16-{16,dev,tools} +- mkdir -p $(BUILD_DIST)/libpng16-16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libpng16-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{bin,lib} \ +- $(BUILD_DIST)/libpng16-tools/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin ++ rm -rf $(BUILD_DIST)/libpng16-proc ++ mkdir -p $(BUILD_DIST)/libpng16-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libpng16} + +- # libpng16.mk Prep libpng16-16 +- cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libpng16.16.dylib $(BUILD_DIST)/libpng16-16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libpng16.mk Prep libpng16-dev +- cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/*-config $(BUILD_DIST)/libpng16-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin +- cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/!(libpng16.16.dylib) $(BUILD_DIST)/libpng16-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libpng16-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/share $(BUILD_DIST)/libpng16-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # libpng16.mk Prep libpng16-tools +- cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/!(*-config) $(BUILD_DIST)/libpng16-tools/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin ++ # libpng16.mk Prep libpng16-proc ++ cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libpng16-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libpng16/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libpng16-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libpng16-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libpng16/.build_complete + + # libpng16.mk Sign +- $(call SIGN,libpng16-16,general.xml) +- $(call SIGN,libpng16-tools,general.xml) ++ $(call SIGN,libpng16-proc,general.xml) + + # libpng16.mk Make .debs +- $(call PACK,libpng16-16,DEB_LIBPNG16_V) +- $(call PACK,libpng16-dev,DEB_LIBPNG16_V) +- $(call PACK,libpng16-tools,DEB_LIBPNG16_V) ++ $(call PACK,libpng16-proc,DEB_LIBPNG16_V) + + # libpng16.mk Build cleanup +- rm -rf $(BUILD_DIST)/libpng16-{16,dev,tools} ++ rm -rf $(BUILD_DIST)/libpng16-proc + + .PHONY: libpng16 libpng16-package diff --git a/makefiles/libusbmuxd.mk b/makefiles/libusbmuxd.mk -index c4fb00f..1ab8a4a 100644 +index c01f651..1558889 100644 --- a/makefiles/libusbmuxd.mk +++ b/makefiles/libusbmuxd.mk -@@ -16,12 +16,19 @@ libusbmuxd: - else - libusbmuxd: libusbmuxd-setup libplist - cd $(BUILD_WORK)/libusbmuxd && ./autogen.sh \ -- $(DEFAULT_CONFIGURE_FLAGS) -+ $(DEFAULT_CONFIGURE_FLAGS) \ -+ --disable-shared -+ cd $(BUILD_WORK)/libusbmuxd/include - +$(MAKE) -C $(BUILD_WORK)/libusbmuxd -+ cd $(BUILD_WORK)/libusbmuxd/common -+ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd -+ cd $(BUILD_WORK)/libusbmuxd/src - +$(MAKE) -C $(BUILD_WORK)/libusbmuxd install \ - DESTDIR="$(BUILD_STAGE)/libusbmuxd" - +$(MAKE) -C $(BUILD_WORK)/libusbmuxd install \ - DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libusbmuxd/.build_complete +@@ -3,12 +3,13 @@ $(error Use the main Makefile) endif + SUBPROJECTS += libusbmuxd +-LIBUSBMUXD_VERSION := 2.0.2 ++LIBUSBMUXD_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.libusbmuxd.commit' | tr -d '\n') ++LIBUSBMUXD_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libusbmuxd.version2' | tr -d '\n').$(shell echo $(LIBUSBMUXD_COMMIT) | cut -c -7) + DEB_LIBUSBMUXD_V ?= $(LIBUSBMUXD_VERSION) + + libusbmuxd-setup: setup +- $(call GITHUB_ARCHIVE,libimobiledevice,libusbmuxd,$(LIBUSBMUXD_VERSION),$(LIBUSBMUXD_VERSION)) +- $(call EXTRACT_TAR,libusbmuxd-$(LIBUSBMUXD_VERSION).tar.gz,libusbmuxd-$(LIBUSBMUXD_VERSION),libusbmuxd) ++ $(call GITHUB_ARCHIVE,libimobiledevice,libusbmuxd,$(LIBUSBMUXD_COMMIT),$(LIBUSBMUXD_COMMIT)) ++ $(call EXTRACT_TAR,libusbmuxd-$(LIBUSBMUXD_COMMIT).tar.gz,libusbmuxd-$(LIBUSBMUXD_COMMIT),libusbmuxd) + + ifneq ($(wildcard $(BUILD_WORK)/libusbmuxd/.build_complete),) + libusbmuxd: +@@ -17,41 +18,39 @@ else + libusbmuxd: libusbmuxd-setup libplist + cd $(BUILD_WORK)/libusbmuxd && ./autogen.sh \ + $(DEFAULT_CONFIGURE_FLAGS) +- +$(MAKE) -C $(BUILD_WORK)/libusbmuxd +- +$(MAKE) -C $(BUILD_WORK)/libusbmuxd install \ ++ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd/include install \ + DESTDIR="$(BUILD_STAGE)/libusbmuxd" +- +$(MAKE) -C $(BUILD_WORK)/libusbmuxd install \ ++ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd/common install \ ++ DESTDIR="$(BUILD_STAGE)/libusbmuxd" ++ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd/src install \ ++ DESTDIR="$(BUILD_STAGE)/libusbmuxd" ++ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd/include install \ ++ DESTDIR="$(BUILD_BASE)" ++ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd/common install \ + DESTDIR="$(BUILD_BASE)" ++ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd/src install \ ++ DESTDIR="$(BUILD_BASE)" ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) + endif + + libusbmuxd-package: libusbmuxd-stage + # libusbmuxd.mk Package Structure +- rm -rf $(BUILD_DIST)/libusbmuxd{6,-dev,-tools} +- mkdir -p $(BUILD_DIST)/libusbmuxd6/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libusbmuxd-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libusbmuxd-tools/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # libusbmuxd.mk Prep libusbmuxd6 +- cp -a $(BUILD_STAGE)/libusbmuxd/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libusbmuxd-2.0.6.dylib $(BUILD_DIST)/libusbmuxd6/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/ +- +- # libusbmuxd.mk Prep libusbmuxd-dev +- cp -a $(BUILD_STAGE)/libusbmuxd/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/{pkgconfig,libusbmuxd-2.0.{a,dylib}} $(BUILD_DIST)/libusbmuxd-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libusbmuxd/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libusbmuxd-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ rm -rf $(BUILD_DIST)/libusbmuxd-proc ++ mkdir -p $(BUILD_DIST)/libusbmuxd-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libusbmuxd} + +- # libusbmuxd.mk Prep libusbmuxd-tools +- cp -a $(BUILD_STAGE)/libusbmuxd/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{bin,share} $(BUILD_DIST)/libusbmuxd-tools/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # libusbmuxd.mk Prep libusbmuxd-proc ++ cp -a $(BUILD_STAGE)/libusbmuxd/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libusbmuxd-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/libusbmuxd/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libusbmuxd-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libusbmuxd-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libusbmuxd/.build_complete + + # libusbmuxd.mk Sign +- $(call SIGN,libusbmuxd6,general.xml) +- $(call SIGN,libusbmuxd-tools,general.xml) ++ $(call SIGN,libusbmuxd-proc,general.xml) + + # libusbmuxd.mk Make .debs +- $(call PACK,libusbmuxd6,DEB_LIBUSBMUXD_V) +- $(call PACK,libusbmuxd-dev,DEB_LIBUSBMUXD_V) +- $(call PACK,libusbmuxd-tools,DEB_LIBUSBMUXD_V) ++ $(call PACK,libusbmuxd-proc,DEB_LIBUSBMUXD_V) + + # libusbmuxd.mk Build cleanup +- rm -rf $(BUILD_DIST)/libusbmuxd{6,-dev,-tools} ++ rm -rf $(BUILD_DIST)/libusbmuxd-proc + + .PHONY: libusbmuxd libusbmuxd-package diff --git a/makefiles/libzip.mk b/makefiles/libzip.mk -index b7b5019..ee0021b 100644 +index fac9f98..df4f2dd 100644 --- a/makefiles/libzip.mk +++ b/makefiles/libzip.mk -@@ -14,20 +14,27 @@ ifneq ($(wildcard $(BUILD_WORK)/libzip/.build_complete),) +@@ -3,8 +3,8 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libzip +-LIBZIP_VERSION := 1.7.3 +-DEB_LIBZIP_V ?= $(LIBZIP_VERSION)-1 ++LIBZIP_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.libzip.version2' | tr -d '\n') ++DEB_LIBZIP_V ?= $(LIBZIP_VERSION) + + libzip-setup: setup + wget -q -nc -P $(BUILD_SOURCE) https://libzip.org/download/libzip-$(LIBZIP_VERSION).tar.gz +@@ -14,58 +14,45 @@ ifneq ($(wildcard $(BUILD_WORK)/libzip/.build_complete),) libzip: @echo "Using previously built libzip." else -libzip: libzip-setup xz openssl -- cd $(BUILD_WORK)/libzip && cmake . \ +libzip: libzip-setup openssl -+ cd $(BUILD_WORK)/libzip && \ -+ cmake \ -+ . \ + cd $(BUILD_WORK)/libzip && cmake . \ $(DEFAULT_CMAKE_FLAGS) \ + -DBUILD_SHARED_LIBS=0 \ ++ -DENABLE_LZMA=OFF \ ++ -DENABLE_BZIP2=OFF \ -DCOMMON_ARCH=$(DEB_ARCH) \ -DENABLE_COMMONCRYPTO=OFF \ -DENABLE_GNUTLS=OFF \ -DENABLE_MBEDTLS=OFF \ -DENABLE_WINDOWS_CRYPTO=OFF \ -- -DENABLE_OPENSSL=ON + -DENABLE_OPENSSL=ON - +$(MAKE) -C $(BUILD_WORK)/libzip - +$(MAKE) -C $(BUILD_WORK)/libzip install \ -+ -DENABLE_OPENSSL=ON && \ + $(SED) -i '77,81d' $(BUILD_WORK)/libzip/cmake_install.cmake -+ +$(MAKE) zip/fast -C $(BUILD_WORK)/libzip \ -+ LDFLAGS="$(LDFLAGS) -L/usr/lib -llzma" ++ +$(MAKE) zip/fast -C $(BUILD_WORK)/libzip + +$(MAKE) -C $(BUILD_WORK)/libzip install/strip/fast \ DESTDIR="$(BUILD_STAGE)/libzip" - +$(MAKE) -C $(BUILD_WORK)/libzip install \ + +$(MAKE) -C $(BUILD_WORK)/libzip install/strip/fast \ DESTDIR="$(BUILD_BASE)" -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/libzip/.build_complete + $(call AFTER_BUILD) endif -diff --git a/makefiles/lzfse.mk b/makefiles/lzfse.mk -index ee21826..1c0b436 100644 ---- a/makefiles/lzfse.mk -+++ b/makefiles/lzfse.mk -@@ -17,8 +17,10 @@ else - lzfse: lzfse-setup - cd $(BUILD_WORK)/lzfse && cmake . \ - $(DEFAULT_CMAKE_FLAGS) \ -+ -DBUILD_SHARED_LIBS=0 \ - . -- +$(MAKE) -C $(BUILD_WORK)/lzfse -+ +$(MAKE) lzfse/fast -C $(BUILD_WORK)/lzfse -+ $(SED) -i '48,60d' $(BUILD_WORK)/lzfse/cmake_install.cmake - +$(MAKE) -C $(BUILD_WORK)/lzfse install \ - DESTDIR="$(BUILD_STAGE)/lzfse" - +$(MAKE) -C $(BUILD_WORK)/lzfse install \ + libzip-package: libzip-stage + # libzip.mk Package Structure +- rm -rf $(BUILD_DIST)/libzip{5,-dev} $(BUILD_DIST)/zip{cmp,merge,tool} +- mkdir -p $(BUILD_DIST)/libzip5/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib \ +- $(BUILD_DIST)/libzip-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{lib,share/man} \ +- $(BUILD_DIST)/zip{cmp,merge,tool}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{bin,share/man/man1} ++ rm -rf $(BUILD_DIST)/libzip-proc ++ mkdir -p $(BUILD_DIST)/libzip-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libzip} + +- # libzip.mk Prep libzip5 +- cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libzip.5*.dylib $(BUILD_DIST)/libzip5/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- +- # libzip.mk Prep libzip-dev +- cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/!(libzip.5*.dylib) $(BUILD_DIST)/libzip-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/share/man/man3 $(BUILD_DIST)/libzip-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/share/man +- cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libzip-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # libzip.mk Prep zip{cmp,merge,tool} +- for bin in zip{cmp,merge,tool}; do \ +- cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/$$bin $(BUILD_DIST)/$$bin/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin; \ +- cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/share/man/man1/$$bin.1 $(BUILD_DIST)/$$bin/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/share/man/man1; \ +- done ++ # libzip.mk Prep libzip-proc ++ cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libzip-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ rm -rf $(BUILD_DIST)/libzip-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/cmake ++ cp -a $(BUILD_STAGE)/libzip/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libzip-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libzip-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/libzip/.build_complete + + # libzip.mk Sign +- $(call SIGN,libzip5,general.xml) +- $(call SIGN,zipcmp,general.xml) +- $(call SIGN,zipmerge,general.xml) +- $(call SIGN,ziptool,general.xml) ++ $(call SIGN,libzip-proc,general.xml) + + # libzip.mk Make .debs +- $(call PACK,libzip5,DEB_LIBZIP_V) +- $(call PACK,libzip-dev,DEB_LIBZIP_V) +- $(call PACK,zipcmp,DEB_LIBZIP_V) +- $(call PACK,zipmerge,DEB_LIBZIP_V) +- $(call PACK,ziptool,DEB_LIBZIP_V) ++ $(call PACK,libzip-proc,DEB_LIBZIP_V) + + # libzip.mk Build cleanup +- rm -rf $(BUILD_DIST)/libzip{5,-dev} $(BUILD_DIST)/zip{cmp,merge,tool} ++ rm -rf $(BUILD_DIST)/libzip-proc + + .PHONY: libzip libzip-package diff --git a/makefiles/openssl.mk b/makefiles/openssl.mk -index e4c90df..59df7c6 100644 +index b026285..73e2d4f 100644 --- a/makefiles/openssl.mk +++ b/makefiles/openssl.mk -@@ -64,10 +64,12 @@ openssl: openssl-setup +@@ -11,8 +11,8 @@ endif # ($(SSH_STRAP),1) + else # ($(MEMO_TARGET),darwin-\*) + SUBPROJECTS += openssl + endif +-OPENSSL_VERSION := 1.1.1k +-DEB_OPENSSL_V ?= $(OPENSSL_VERSION)-1 ++OPENSSL_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.openssl.version2' | tr -d '\n') ++DEB_OPENSSL_V ?= $(OPENSSL_VERSION) + + ### + # +@@ -63,41 +63,31 @@ openssl: openssl-setup + --openssldir=$(MEMO_PREFIX)/etc/ssl \ shared \ $(SSL_SCHEME) - +$(MAKE) -C $(BUILD_WORK)/openssl +- +$(MAKE) -C $(BUILD_WORK)/openssl - +$(MAKE) -C $(BUILD_WORK)/openssl install_sw install_ssldirs \ + +$(MAKE) -C $(BUILD_WORK)/openssl install_dev \ DESTDIR=$(BUILD_STAGE)/openssl - +$(MAKE) -C $(BUILD_WORK)/openssl install_sw \ + +$(MAKE) -C $(BUILD_WORK)/openssl install_dev \ DESTDIR=$(BUILD_BASE) -+ find . -name '*.dylib' -exec rm -rf {} \; -+ find . -name '*.la*' -exec rm -rf {} \; - touch $(BUILD_WORK)/openssl/.build_complete ++ fd -pe dylib -X rm \; '.*' build_* + $(call AFTER_BUILD) endif + openssl-package: openssl-stage + # openssl.mk Package Structure +- rm -rf $(BUILD_DIST)/{openssl,libssl{1.1,-dev}} +- mkdir -p $(BUILD_DIST)/{openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin,libssl{1.1,-dev}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib} ++ rm -rf $(BUILD_DIST)/libssl-proc ++ mkdir -p $(BUILD_DIST)/libssl-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/openssl} + +- # openssl.mk Prep libssl1.1 +- cp -a $(BUILD_STAGE)/openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libssl1.1/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- rm -rf $(BUILD_DIST)/libssl1.1/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/{lib{ssl,crypto}.{a,dylib},pkgconfig} +- +- # openssl.mk Prep libssl-dev +- cp -a $(BUILD_STAGE)/openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/{lib{ssl,crypto}.{a,dylib},pkgconfig} $(BUILD_DIST)/libssl-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib +- cp -a $(BUILD_STAGE)/openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libssl-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # openssl.mk Prep openssl +- cp -a $(BUILD_STAGE)/openssl/$(MEMO_PREFIX)/etc $(BUILD_DIST)/openssl/$(MEMO_PREFIX)/etc +- cp -a $(BUILD_STAGE)/openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin/* $(BUILD_DIST)/openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/bin ++ # openssl.mk Prep libssl-proc ++ cp -a $(BUILD_STAGE)/openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib $(BUILD_DIST)/libssl-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ cp -a $(BUILD_STAGE)/openssl/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include $(BUILD_DIST)/libssl-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libssl-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/openssl/.build_complete + + # openssl.mk Sign +- $(call SIGN,libssl1.1,general.xml) +- $(call SIGN,openssl,general.xml) ++ $(call SIGN,libssl-proc,general.xml) + + # openssl.mk Make .debs +- $(call PACK,libssl1.1,DEB_OPENSSL_V) +- $(call PACK,libssl-dev,DEB_OPENSSL_V) +- $(call PACK,openssl,DEB_OPENSSL_V) ++ $(call PACK,libssl-proc,DEB_OPENSSL_V) + + # openssl.mk Build cleanup +- rm -rf $(BUILD_DIST)/{openssl,libssl{1.1,-dev}} ++ rm -rf $(BUILD_DIST)/libssl-proc + + .PHONY: openssl openssl-package +diff --git a/makefiles/tsschecker.mk b/makefiles/tsschecker.mk +index 5b8471e..70d5685 100644 +--- a/makefiles/tsschecker.mk ++++ b/makefiles/tsschecker.mk +@@ -3,8 +3,8 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += tsschecker +-TSSCHECKER_VERSION := 334 +-TSSCHECKER_COMMIT := 1b5e82e3c8275874a3595c2c57cd5ea9921dc2e2 ++TSSCHECKER_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.tsschecker.version' | tr -d '\n') ++TSSCHECKER_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.tsschecker.commit' | tr -d '\n') + DEB_TSSCHECKER_V ?= $(TSSCHECKER_VERSION) + + tsschecker-setup: setup +@@ -12,7 +12,7 @@ tsschecker-setup: setup + $(call GITHUB_ARCHIVE,tihmstar,jssy,master,master) + $(call EXTRACT_TAR,tsschecker-$(TSSCHECKER_COMMIT).tar.gz,tsschecker-$(TSSCHECKER_COMMIT),tsschecker) + # so EXTRACT_TAR wont fail +- -rmdir $(BUILD_WORK)/tsschecker/external/jssy ++ if [[ ! -d $(BUILD_WORK)/tsschecker/external/jssy/jssy ]]; then rm -rf $(BUILD_WORK)/tsschecker/external/jssy; fi + $(call EXTRACT_TAR,jssy-master.tar.gz,jssy-master,tsschecker/external/jssy) + + $(SED) -i 's/git rev\-list \-\-count HEAD/printf ${TSSCHECKER_VERSION}/g' $(BUILD_WORK)/tsschecker/configure.ac diff --git a/makefiles/xpwn.mk b/makefiles/xpwn.mk -index 1b8ca5f..6ed85c1 100644 +index 560edec..7a4d239 100644 --- a/makefiles/xpwn.mk +++ b/makefiles/xpwn.mk -@@ -23,16 +23,16 @@ xpwn: xpwn-setup libpng16 openssl +@@ -3,14 +3,13 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += xpwn +-XPWN_COMMIT := def39d6e0ed0fdec0a0ff526bd11bec15d8de4e7 +-XPWN_VERSION := 0.5.8+git20201206.$(shell echo $(XPWN_COMMIT) | cut -c -7) ++XPWN_COMMIT := $(shell cat build_tools/versions.json | jq -r '.versions.xpwn.commit' | tr -d '\n') ++XPWN_VERSION := $(shell cat build_tools/versions.json | jq -r '.versions.xpwn.version2' | tr -d '\n').$(shell echo $(XPWN_COMMIT) | cut -c -7) + DEB_XPWN_V ?= $(XPWN_VERSION) + + xpwn-setup: setup +- $(call GITHUB_ARCHIVE,OothecaPickle,xpwn,$(XPWN_COMMIT),$(XPWN_COMMIT)) ++ $(call GITHUB_ARCHIVE,nyuszika7h,xpwn,$(XPWN_COMMIT),$(XPWN_COMMIT)) + $(call EXTRACT_TAR,xpwn-$(XPWN_COMMIT).tar.gz,xpwn-$(XPWN_COMMIT),xpwn) +- $(call DO_PATCH,xpwn,xpwn,-p1) + + $(SED) -i 's/powerpc-apple-darwin8-libtool/libtool/' $(BUILD_WORK)/xpwn/ipsw-patch/CMakeLists.txt + +@@ -21,40 +20,33 @@ else + xpwn: xpwn-setup libpng16 openssl + cd $(BUILD_WORK)/xpwn && cmake . \ $(DEFAULT_CMAKE_FLAGS) \ ++ -DBUILD_SHARED_LIBS=0 \ -DBZIP2_LIBRARIES="-L$(TARGET_SYSROOT)/usr/lib -lbz2" \ -DZLIB_LIBRARY="-L$(TARGET_SYSROOT)/usr/lib -lz" - +$(MAKE) -C $(BUILD_WORK)/xpwn @@ -634,10 +1678,6 @@ index 1b8ca5f..6ed85c1 100644 - +$(MAKE) -C $(BUILD_WORK)/xpwn install \ - DESTDIR=$(BUILD_STAGE)/xpwn + +$(MAKE) common/fast xpwn/fast -C $(BUILD_WORK)/xpwn -+ # +$(MAKE) -C $(BUILD_WORK)/xpwn install \ -+ # DESTDIR=$(BUILD_BASE) -+ # +$(MAKE) -C $(BUILD_WORK)/xpwn install \ -+ # DESTDIR=$(BUILD_STAGE)/xpwn mkdir -p {$(BUILD_BASE),$(BUILD_STAGE)/xpwn}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include/xpwn,lib/xpwn} cp -a $(BUILD_WORK)/xpwn/includes/* $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn cp -a $(BUILD_WORK)/xpwn/includes/* $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn @@ -645,6 +1685,35 @@ index 1b8ca5f..6ed85c1 100644 - cp -a $(BUILD_WORK)/xpwn/{ipsw-patch/libxpwn,minizip/libminizip,common/libcommon,hfs/libhfs,dmg/libdmg}.a $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn + cp -a $(BUILD_WORK)/xpwn/{ipsw-patch/libxpwn,common/libcommon}.a $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn + cp -a $(BUILD_WORK)/xpwn/{ipsw-patch/libxpwn,common/libcommon}.a $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn - touch $(BUILD_WORK)/xpwn/.build_complete + $(call AFTER_BUILD) endif + xpwn-package: xpwn-stage + # xpwn.mk Package Structure +- rm -rf $(BUILD_DIST)/{libxpwn-dev,xpwn} +- mkdir -p $(BUILD_DIST)/{libxpwn-dev,xpwn}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ rm -rf $(BUILD_DIST)/libxpwn-proc ++ mkdir -p $(BUILD_DIST)/libxpwn-proc/{Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX),Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/xpwn} + +- # xpwn.mk Prep xpwn +- cp -a $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{bin,share} $(BUILD_DIST)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) +- +- # xpwn.mk Prep libxpwn-dev +- cp -a $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include,lib} $(BUILD_DIST)/libxpwn-dev/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ # xpwn.mk Prep libxpwn-proc ++ cp -a $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include,lib} $(BUILD_DIST)/libxpwn-proc/Users/runner/Procursus/build_base/$(MEMO_TARGET)/$(MEMO_CFVER)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX) ++ touch $(BUILD_DIST)/libxpwn-proc/Users/runner/Procursus/build_work/$(MEMO_TARGET)/$(MEMO_CFVER)/xpwn/.build_complete + + # xpwn.mk Sign +- $(call SIGN,xpwn,general.xml) + + # xpwn.mk Make .debs +- $(call PACK,xpwn,DEB_XPWN_V) +- $(call PACK,libxpwn-dev,DEB_XPWN_V) ++ $(call PACK,libxpwn-proc,DEB_XPWN_V) + + # xpwn.mk Build cleanup +- rm -rf $(BUILD_DIST)/{libxpwn-dev,xpwn} ++ rm -rf $(BUILD_DIST)/libxpwn-proc + + .PHONY: xpwn xpwn-package diff --git a/.github/workflows/proc_ci1.diff b/.github/workflows/proc_ci1.diff new file mode 100644 index 00000000..e1661a9e --- /dev/null +++ b/.github/workflows/proc_ci1.diff @@ -0,0 +1,650 @@ +diff --git a/Makefile b/Makefile +index d2d437c..8c15b54 100644 +--- a/Makefile ++++ b/Makefile +@@ -345,7 +345,7 @@ BUILD_CXXFLAGS := + BUILD_LDFLAGS := + + else ifeq ($(UNAME),Darwin) +-ifeq ($(shell sw_vers -productName),macOS) ++ifeq ($(shell echo 1),1) + ifneq ($(MEMO_QUIET),1) + $(warning Building on MacOS) + endif # ($(MEMO_QUIET),1) +@@ -434,18 +434,18 @@ OPTIMIZATION_FLAGS := -Oz + else + OPTIMIZATION_FLAGS := -Os + ifeq ($(UNAME),Darwin) +-OPTIMIZATION_FLAGS += -flto=thin ++OPTIMIZATION_FLAGS += -fembed-bitcode=off -fno-lto + else ifeq ($(MEMO_FORCE_LTO),1) +-OPTIMIZATION_FLAGS += -flto=thin ++OPTIMIZATION_FLAGS += -fembed-bitcode=off -fno-lto + # This flag will prevent ld64 from deleting the object file needed for dsymutil to work. + # I'm not setting this on macOS because I am unsure if it is needed. + # See: clang(1) +-OPTIMIZATION_FLAGS += -Wl,-object_path_lto,/tmp/lto.o ++# OPTIMIZATION_FLAGS += -Wl,-object_path_lto,/tmp/lto.o + endif + endif +-ifdef ($(MEMO_ALT_LTO_LIB)) +-OPTIMIZATION_FLAGS += -lto_library $(MEMO_ALT_LTO_LIB) +-endif ++# ifdef ($(MEMO_ALT_LTO_LIB)) ++# OPTIMIZATION_FLAGS += -lto_library $(MEMO_ALT_LTO_LIB) ++# endif + + CFLAGS := $(OPTIMIZATION_FLAGS) -arch $(MEMO_ARCH) -isysroot $(TARGET_SYSROOT) $(PLATFORM_VERSION_MIN) -isystem $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include -isystem $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)$(MEMO_ALT_PREFIX)/include -F$(BUILD_BASE)$(MEMO_PREFIX)/System/Library/Frameworks -F$(BUILD_BASE)$(MEMO_PREFIX)/Library/Frameworks + CXXFLAGS := $(CFLAGS) +@@ -702,17 +702,17 @@ endif + + TAR := tar # TODO: remove + +-ifneq ($(shell PATH=$(PATH) tar --version | grep -q GNU && echo 1),1) ++ifneq ($(shell tar --version | grep -q GNU && echo 1),1) + $(error Install GNU tar) + endif + + SED := sed # TODO: remove + +-ifneq ($(shell PATH=$(PATH) sed --version | grep -q GNU && echo 1),1) ++ifneq ($(shell sed --version | grep -q GNU && echo 1),1) + $(error Install GNU sed) + endif + +-ifneq ($(shell PATH=$(PATH) grep --version | grep -q GNU && echo 1),1) ++ifneq ($(shell grep --version | grep -q GNU && echo 1),1) + $(error Install GNU grep) + endif + +@@ -762,49 +762,49 @@ ifneq ($(call HAS_COMMAND,m4),1) + $(error Install m4) + endif + +-ifneq ($(shell PATH=$(PATH) groff --version | grep -q 'version 1.2' && echo 1),1) ++ifneq ($(shell groff --version | grep -q 'version 1.2' && echo 1),1) + $(error Install newer groff) + endif + +-ifneq ($(shell PATH=$(PATH) patch --version | grep -q 'GNU patch' && echo 1),1) ++ifneq ($(shell patch --version | grep -q 'GNU patch' && echo 1),1) + $(error Install GNU patch) + endif + +-ifneq ($(shell PATH=$(PATH) find --version | grep -q 'GNU find' && echo 1),1) ++ifneq ($(shell find --version | grep -q 'GNU find' && echo 1),1) + $(error Install GNU findutils) + endif + +-ifneq ($(shell PATH=$(PATH) rmdir --version | grep -q 'GNU coreutils' && echo 1),1) ++ifneq ($(shell rmdir --version | grep -q 'GNU coreutils' && echo 1),1) + $(error Install GNU coreutils) + endif + +-ifeq ($(shell PATH=$(PATH) install --version | grep -q 'GNU coreutils' && echo 1),1) +-export INSTALL := $(shell PATH=$(PATH) which install) --strip-program=$(STRIP) ++ifeq ($(shell install --version | grep -q 'GNU coreutils' && echo 1),1) ++export INSTALL := $(shell which install) --strip-program=$(STRIP) + else + $(error Install GNU coreutils) + endif + +-ifeq ($(shell PATH=$(PATH) wc --version | grep -q 'GNU coreutils' && echo 1),1) ++ifeq ($(shell wc --version | grep -q 'GNU coreutils' && echo 1),1) + WC := wc + else + $(error Install GNU coreutils) + endif + +-ifeq ($(shell PATH=$(PATH) cp --version | grep -q 'GNU coreutils' && echo 1),1) ++ifeq ($(shell cp --version | grep -q 'GNU coreutils' && echo 1),1) + CP := cp + else + $(error Install GNU coreutils) + endif + export CP + +-ifeq ($(shell PATH=$(PATH) ln --version | grep -q 'GNU coreutils' && echo 1),1) ++ifeq ($(shell ln --version | grep -q 'GNU coreutils' && echo 1),1) + LN := ln + else + $(error Install GNU coreutils) + endif + export LN + +-ifneq ($(shell PATH=$(PATH) file -bi $(BUILD_MISC)/launchctl.1700 | grep -q 'x-mach-binary; charset=binary' && echo 1),1) ++ifneq ($(shell file -bi $(BUILD_MISC)/launchctl.1700 | grep -q 'x-mach-binary; charset=binary' && echo 1),1) + $(error Install better file from Procursus - sudo apt install file) + endif + +@@ -871,11 +871,11 @@ MAKEFLAGS += --no-print-directory + + ifeq ($(findstring --jobserver-auth=,$(MAKEFLAGS)),) + ifeq ($(call HAS_COMMAND,nproc),1) +-GET_LOGICAL_CORES := nproc ++GET_LOGICAL_CORES := expr $(shell nproc) / 2 + else +-GET_LOGICAL_CORES := sysctl -n hw.ncpu ++GET_LOGICAL_CORES := expr $(shell sysctl -n hw.ncpu) / 2 + endif +-MAKEFLAGS += --jobs=$(shell $(GET_LOGICAL_CORES)) ++MAKEFLAGS += --jobs=$(shell $(GET_LOGICAL_CORES)) --load-average=$(shell $(GET_LOGICAL_CORES)) + endif + + PROCURSUS := 1 +@@ -1011,7 +1011,7 @@ endif + echo "$(BUILD_STRAP)/$${BOOTSTRAP}" + endif # ($(MEMO_PREFIX),) + +-%-package: FAKEROOT=fakeroot -i $(BUILD_STAGE)/.fakeroot_$$(echo $@ | sed 's/\(.*\)-package/\1/') -s $(BUILD_STAGE)/.fakeroot_$$(echo $@ | sed 's/\(.*\)-package/\1/') -- ++%-package: FAKEROOT=fakeroot -i $(BUILD_STAGE)/.fakeroot_$* -s $(BUILD_STAGE)/.fakeroot_$* -- + %-package: .SHELLFLAGS=-O extglob -c + %-stage: % + rm -f $(BUILD_STAGE)/.fakeroot_$* +@@ -1056,24 +1056,24 @@ endif + + ifeq (,$(findstring darwin,$(MEMO_TARGET))) + @# Copy headers from MacOSX.sdk +- @cp -af $(MACOSX_SYSROOT)/usr/include/{arpa,bsm,net,xpc,netinet,servers} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include +- @cp -af $(MACOSX_SYSROOT)/usr/include/objc/objc-runtime.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/objc +- @cp -af $(MACOSX_SYSROOT)/usr/include/libkern/{OSDebug.h,OSKextLib.h,OSReturn.h,OSThermalNotification.h,OSTypes.h,machine} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/libkern +- @cp -af $(MACOSX_SYSROOT)/usr/include/kern $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include +- @cp -af $(MACOSX_SYSROOT)/usr/include/sys/{tty*,proc*,ptrace,kern*,random,reboot,user,vnode}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/sys +- @cp -af $(MACOSX_SYSROOT)/System/Library/Frameworks/IOKit.framework/Headers/* $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/IOKit +- @cp -af $(MACOSX_SYSROOT)/usr/include/{ar,bootstrap,launch,libc,libcharset,localcharset,libproc,NSSystemDirectories,tzfile,vproc}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include +- @cp -af $(MACOSX_SYSROOT)/usr/include/mach/{*.defs,{mach_vm,shared_region}.h} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach +- @cp -af $(MACOSX_SYSROOT)/usr/include/mach/machine/*.defs $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine +- @cp -af $(TARGET_SYSROOT)/usr/include/mach/machine/thread_state.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine +- @cp -af $(TARGET_SYSROOT)/usr/include/mach/arm $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach +- @cp -af $(BUILD_INFO)/availability.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/os ++ @cp -a $(MACOSX_SYSROOT)/usr/include/{arpa,bsm,net,xpc,netinet,servers} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include ++ @cp -a $(MACOSX_SYSROOT)/usr/include/objc/objc-runtime.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/objc ++ @cp -a $(MACOSX_SYSROOT)/usr/include/libkern/* $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/libkern ++ @cp -a $(MACOSX_SYSROOT)/usr/include/kern $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include ++ @cp -a $(MACOSX_SYSROOT)/usr/include/sys/{tty*,proc*,ptrace,kern*,random,reboot,user,vnode}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/sys ++ @cp -a $(MACOSX_SYSROOT)/System/Library/Frameworks/IOKit.framework/Headers/* $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/IOKit ++ @cp -a $(MACOSX_SYSROOT)/usr/include/{ar,bootstrap,launch,libc,libcharset,localcharset,libproc,NSSystemDirectories,tzfile,vproc}.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include ++ @cp -a $(MACOSX_SYSROOT)/usr/include/mach/{*.defs,{mach_vm,shared_region}.h} $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach ++ @cp -a $(MACOSX_SYSROOT)/usr/include/mach/machine/*.defs $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine ++ @cp $(TARGET_SYSROOT)/usr/include/mach/machine/thread_state.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach/machine ++ @cp -a $(TARGET_SYSROOT)/usr/include/mach/arm $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/mach ++ @cp -a $(BUILD_INFO)/availability.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/os + ifneq ($(wildcard $(BUILD_MISC)/IOKit.framework.$(PLATFORM)),) +- @cp -af $(BUILD_MISC)/IOKit.framework.$(PLATFORM) $(BUILD_BASE)/$(MEMO_PREFIX)/System/Library/Frameworks/IOKit.framework ++ @cp -a $(BUILD_MISC)/IOKit.framework.$(PLATFORM) $(BUILD_BASE)/$(MEMO_PREFIX)/System/Library/Frameworks/IOKit.framework + endif + + @mkdir -p $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/CoreAudio +- @cp -af $(MACOSX_SYSROOT)/System/Library/Frameworks/CoreAudio.framework/Headers/* $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/CoreAudio ++ @cp -a $(MACOSX_SYSROOT)/System/Library/Frameworks/CoreAudio.framework/Headers/* $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/CoreAudio + + @# Patch headers from iPhoneOS.sdk + @$(SED) -E s/'__IOS_PROHIBITED|__TVOS_PROHIBITED|__WATCHOS_PROHIBITED'//g < $(TARGET_SYSROOT)/usr/include/stdlib.h > $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/stdlib.h +@@ -1086,8 +1086,8 @@ endif + @$(SED) -E /'__API_UNAVAILABLE'/d < $(TARGET_SYSROOT)/usr/include/pthread.h > $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/pthread.h + + @# Setup libiosexec +- @cp -af $(BUILD_MISC)/libiosexec/libiosexec.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include +- @cp -af $(BUILD_MISC)/libiosexec/libiosexec.1.tbd $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib ++ @cp -a $(BUILD_MISC)/libiosexec/libiosexec.h $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include ++ @cp -a $(BUILD_MISC)/libiosexec/libiosexec.1.tbd $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib + @ln -sf libiosexec.1.tbd $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libiosexec.tbd + @rm -f $(BUILD_BASE)/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/libiosexec.*.dylib + @$(SED) -i '1s/^/#include \n/' $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/unistd.h +diff --git a/makefiles/futurerestore.mk b/makefiles/futurerestore.mk +index e90d6e0..335eb19 100644 +--- a/makefiles/futurerestore.mk ++++ b/makefiles/futurerestore.mk +@@ -3,34 +3,24 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += futurerestore +-FUTURERESTORE_VERSION := 195 +-FUTURERESTORE_COMMIT := 55db758b5d4d6c08daa48af9aad1abf2b6466f36 +-FUTURERESTORE_IDEVICERESTORE_COMMIT := d7d9996b3910902a56462fa8d9dc5909fcf8f4c9 +-DEB_FUTURERESTORE_V ?= $(FUTURERESTORE_VERSION)-1 ++DEB_FUTURERESTORE_V ?= $(FUTURERESTORE_VERSION) + +-futurerestore-setup: setup tsschecker-setup +- $(call GITHUB_ARCHIVE,m1stadev,futurerestore,$(FUTURERESTORE_COMMIT),$(FUTURERESTORE_COMMIT)) +- $(call GITHUB_ARCHIVE,m1stadev,idevicerestore,$(FUTURERESTORE_IDEVICERESTORE_COMMIT),$(FUTURERESTORE_IDEVICERESTORE_COMMIT)) +- $(call EXTRACT_TAR,futurerestore-$(FUTURERESTORE_COMMIT).tar.gz,futurerestore-$(FUTURERESTORE_COMMIT),futurerestore) +- +- -rmdir $(BUILD_WORK)/futurerestore/external/{idevicerestore,tsschecker} +- $(call EXTRACT_TAR,idevicerestore-$(FUTURERESTORE_IDEVICERESTORE_COMMIT).tar.gz,idevicerestore-$(FUTURERESTORE_IDEVICERESTORE_COMMIT),futurerestore/external/idevicerestore) +- cp -R $(BUILD_WORK)/tsschecker $(BUILD_WORK)/futurerestore/external +- +- $(SED) -i 's/git rev\-list \-\-count HEAD/printf ${FUTURERESTORE_VERSION}/g' $(BUILD_WORK)/futurerestore/configure.ac +- $(SED) -i 's/git rev\-parse HEAD/printf ${FUTURERESTORE_COMMIT}/g' $(BUILD_WORK)/futurerestore/configure.ac ++futurerestore-setup: setup ++ ln -sf ${BASE}/../../../futurerestore $(BUILD_WORK)/ + + ifneq ($(wildcard $(BUILD_WORK)/futurerestore/.build_complete),) + futurerestore: + @echo "Using previously built futurerestore." + else +-futurerestore: futurerestore-setup libirecovery openssl libusbmuxd libimobiledevice img4tool libgeneral libzip libfragmentzip libipatcher ++# futurerestore: futurerestore-setup openssl libplist libusbmuxd libimobiledevice libirecovery img4tool libgeneral libzip libfragmentzip libipatcher ++futurerestore: futurerestore-setup + cd $(BUILD_WORK)/futurerestore && ./autogen.sh \ + $(DEFAULT_CONFIGURE_FLAGS) \ + --disable-silent-rules \ +- zlib_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lz" \ +- zlib_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" +- +$(MAKE) -C $(BUILD_WORK)/futurerestore ++ libcurl_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lcurl" \ ++ libcurl_CFLAGS="$(CFLAGS)" ++ +$(MAKE) -C $(BUILD_WORK)/futurerestore \ ++ LDFLAGS="$(LDFLAGS) -L$(TARGET_SYSROOT)/usr/lib -llzma -lbz2 -lcompression -lcurl -framework CoreFoundation -framework IOKit -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib -lusbmuxd-2.0 -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn -lcommon -lxpwn" + +$(MAKE) -C $(BUILD_WORK)/futurerestore install \ + DESTDIR="$(BUILD_STAGE)/futurerestore" + touch $(BUILD_WORK)/futurerestore/.build_complete +diff --git a/makefiles/gettext.mk b/makefiles/gettext.mk +index 41cd708..8140d62 100644 +--- a/makefiles/gettext.mk ++++ b/makefiles/gettext.mk +@@ -30,6 +30,9 @@ gettext: gettext-setup ncurses libunistring + +$(MAKE) -C $(BUILD_WORK)/gettext install \ + DESTDIR=$(BUILD_BASE) + rm -rf $(BUILD_STAGE)/gettext/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/share/gettext-* ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.a' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/gettext/.build_complete + endif + +diff --git a/makefiles/img4tool.mk b/makefiles/img4tool.mk +index 36ef26d..8b028de 100644 +--- a/makefiles/img4tool.mk ++++ b/makefiles/img4tool.mk +@@ -20,12 +20,14 @@ img4tool: + else + img4tool: img4tool-setup openssl libplist libgeneral + cd $(BUILD_WORK)/img4tool && ./autogen.sh \ +- $(DEFAULT_CONFIGURE_FLAGS) +- +$(MAKE) -C $(BUILD_WORK)/img4tool ++ $(DEFAULT_CONFIGURE_FLAGS) \ ++ --disable-shared + +$(MAKE) -C $(BUILD_WORK)/img4tool install \ + DESTDIR="$(BUILD_STAGE)/img4tool" + +$(MAKE) -C $(BUILD_WORK)/img4tool install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/img4tool/.build_complete + endif + +diff --git a/makefiles/libfragmentzip.mk b/makefiles/libfragmentzip.mk +index 7dcbcc8..82b6b87 100644 +--- a/makefiles/libfragmentzip.mk ++++ b/makefiles/libfragmentzip.mk +@@ -19,16 +19,19 @@ ifneq ($(wildcard $(BUILD_WORK)/libfragmentzip/.build_complete),) + libfragmentzip: + @echo "Using previously built libfragmentzip." + else +-libfragmentzip: libfragmentzip-setup libgeneral libzip curl ++libfragmentzip: libfragmentzip-setup libgeneral libzip + cd $(BUILD_WORK)/libfragmentzip && ./autogen.sh \ + $(DEFAULT_CONFIGURE_FLAGS) \ +- zlib_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lz" \ +- zlib_CFLAGS="-I$(TARGET_SYSROOT)/usr/include" +- +$(MAKE) -C $(BUILD_WORK)/libfragmentzip ++ --disable-shared \ ++ curl_LIBS="-L$(TARGET_SYSROOT)/usr/lib -lcurl" \ ++ curl_CFLAGS="$(CFLAGS)" + +$(MAKE) -C $(BUILD_WORK)/libfragmentzip install \ + DESTDIR="$(BUILD_STAGE)/libfragmentzip" + +$(MAKE) -C $(BUILD_WORK)/libfragmentzip install \ + DESTDIR="$(BUILD_BASE)" ++ $(SED) -i '8d' $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/pkgconfig/libfragmentzip.pc ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libfragmentzip/.build_complete + endif + +diff --git a/makefiles/libgeneral.mk b/makefiles/libgeneral.mk +index 0c1147c..5f44723 100644 +--- a/makefiles/libgeneral.mk ++++ b/makefiles/libgeneral.mk +@@ -20,12 +20,14 @@ libgeneral: + else + libgeneral: libgeneral-setup + cd $(BUILD_WORK)/libgeneral && ./autogen.sh \ +- $(DEFAULT_CONFIGURE_FLAGS) +- +$(MAKE) -C $(BUILD_WORK)/libgeneral ++ $(DEFAULT_CONFIGURE_FLAGS) \ ++ --disable-shared + +$(MAKE) -C $(BUILD_WORK)/libgeneral install \ + DESTDIR="$(BUILD_STAGE)/libgeneral" + +$(MAKE) -C $(BUILD_WORK)/libgeneral install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libgeneral/.build_complete + endif + +diff --git a/makefiles/libimobiledevice.mk b/makefiles/libimobiledevice.mk +index aede911..9d885b2 100644 +--- a/makefiles/libimobiledevice.mk ++++ b/makefiles/libimobiledevice.mk +@@ -19,11 +19,18 @@ libimobiledevice: libimobiledevice-setup libusbmuxd libplist openssl + cd $(BUILD_WORK)/libimobiledevice && ./autogen.sh \ + $(DEFAULT_CONFIGURE_FLAGS) \ + --without-cython ++ cd $(BUILD_WORK)/libimobiledevice/include ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice ++ cd $(BUILD_WORK)/libimobiledevice/common ++ +$(MAKE) -C $(BUILD_WORK)/libimobiledevice ++ cd $(BUILD_WORK)/libimobiledevice/src + +$(MAKE) -C $(BUILD_WORK)/libimobiledevice + +$(MAKE) -C $(BUILD_WORK)/libimobiledevice install \ +- DESTDIR="$(BUILD_STAGE)/libimobiledevice" ++ DESTDIR="$(BUILD_STAGE)" + +$(MAKE) -C $(BUILD_WORK)/libimobiledevice install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libimobiledevice/.build_complete + endif + +diff --git a/makefiles/libinsn.mk b/makefiles/libinsn.mk +index daeed3e..aa5f330 100644 +--- a/makefiles/libinsn.mk ++++ b/makefiles/libinsn.mk +@@ -20,12 +20,14 @@ libinsn: + else + libinsn: libinsn-setup libgeneral + cd $(BUILD_WORK)/libinsn && ./autogen.sh \ +- $(DEFAULT_CONFIGURE_FLAGS) +- +$(MAKE) -C $(BUILD_WORK)/libinsn ++ $(DEFAULT_CONFIGURE_FLAGS) \ ++ --disable-shared + +$(MAKE) -C $(BUILD_WORK)/libinsn install \ + DESTDIR="$(BUILD_STAGE)/libinsn" + +$(MAKE) -C $(BUILD_WORK)/libinsn install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libinsn/.build_complete + endif + +diff --git a/makefiles/libipatcher.mk b/makefiles/libipatcher.mk +index 73364b3..ec56ae0 100644 +--- a/makefiles/libipatcher.mk ++++ b/makefiles/libipatcher.mk +@@ -3,13 +3,13 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += libipatcher +-LIBIPATCHER_VERSION := 81 +-LIBIPATCHER_COMMIT := ad44d0da23f5120c3c77a72062bd627c50f37e71 +-DEB_LIBIPATCHER_V ?= $(LIBIPATCHER_VERSION)-1 ++LIBIPATCHER_VERSION := 83 ++LIBIPATCHER_COMMIT := 49d26904d0c1cf001effb3aa07c3be20225c3b52 ++DEB_LIBIPATCHER_V ?= $(LIBIPATCHER_VERSION) + + libipatcher-setup: setup +- $(call GITHUB_ARCHIVE,tihmstar,libipatcher,$(LIBIPATCHER_VERSION),$(LIBIPATCHER_VERSION)) +- $(call EXTRACT_TAR,libipatcher-$(LIBIPATCHER_VERSION).tar.gz,libipatcher-$(LIBIPATCHER_VERSION),libipatcher) ++ $(call GITHUB_ARCHIVE,Cryptiiiic,libipatcher,$(LIBIPATCHER_COMMIT),$(LIBIPATCHER_COMMIT)) ++ $(call EXTRACT_TAR,libipatcher-$(LIBIPATCHER_COMMIT).tar.gz,libipatcher-$(LIBIPATCHER_COMMIT),libipatcher) + + $(call GITHUB_ARCHIVE,tihmstar,iBoot32Patcher,master,master) + $(call GITHUB_ARCHIVE,tihmstar,jssy,master,master) +@@ -27,9 +27,10 @@ ifneq ($(wildcard $(BUILD_WORK)/libipatcher/.build_complete),) + libipatcher: + @echo "Using previously built libipatcher." + else +-libipatcher: libipatcher-setup libpng16 openssl img4tool liboffsetfinder64 libgeneral libplist curl xpwn ++libipatcher: libipatcher-setup libpng16 openssl img4tool liboffsetfinder64 libgeneral libplist xpwn + cd $(BUILD_WORK)/libipatcher && ./autogen.sh \ + $(DEFAULT_CONFIGURE_FLAGS) \ ++ --disable-shared \ + CFLAGS="$(CFLAGS) -I$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn" \ + CPPFLAGS="$(CPPFLAGS) -I$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn" \ + LDFLAGS="$(LDFLAGS) -L$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn" +@@ -39,6 +40,8 @@ libipatcher: libipatcher-setup libpng16 openssl img4tool liboffsetfinder64 libge + DESTDIR="$(BUILD_STAGE)/libipatcher" + +$(MAKE) -C $(BUILD_WORK)/libipatcher install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libipatcher/.build_complete + endif + +diff --git a/makefiles/libirecovery.mk b/makefiles/libirecovery.mk +index d261c12..81e63c8 100644 +--- a/makefiles/libirecovery.mk ++++ b/makefiles/libirecovery.mk +@@ -15,16 +15,20 @@ ifneq ($(wildcard $(BUILD_WORK)/libirecovery/.build_complete),) + libirecovery: + @echo "Using previously built libirecovery." + else +-libirecovery: libirecovery-setup readline libusb ++libirecovery: libirecovery-setup libimobiledevice + cd $(BUILD_WORK)/libirecovery && ./autogen.sh \ + $(DEFAULT_CONFIGURE_FLAGS) \ +- --with-iokit=no +- +$(MAKE) -C $(BUILD_WORK)/libirecovery \ +- CFLAGS="$(CFLAGS) -I$(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/libusb-1.0" ++ --with-iokit=yes \ ++ --disable-shared ++ cd $(BUILD_WORK)/libirecovery/include ++ +$(MAKE) -C $(BUILD_WORK)/libirecovery ++ cd $(BUILD_WORK)/libirecovery/src + +$(MAKE) -C $(BUILD_WORK)/libirecovery install \ + DESTDIR=$(BUILD_STAGE)/libirecovery + +$(MAKE) -C $(BUILD_WORK)/libirecovery install \ + DESTDIR=$(BUILD_BASE) ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libirecovery/.build_complete + endif + +diff --git a/makefiles/liboffsetfinder64.mk b/makefiles/liboffsetfinder64.mk +index 1b8a892..174ffff 100644 +--- a/makefiles/liboffsetfinder64.mk ++++ b/makefiles/liboffsetfinder64.mk +@@ -3,12 +3,12 @@ $(error Use the main Makefile) + endif + + SUBPROJECTS += liboffsetfinder64 +-LIBOFFSETFINDER64_VERSION := 132 +-LIBOFFSETFINDER64_COMMIT := 35d3411bf675a83bdb768bc0ec26fe2344be16f3 +-DEB_LIBOFFSETFINDER64_V ?= $(LIBOFFSETFINDER64_VERSION)-1 ++LIBOFFSETFINDER64_VERSION := 138 ++LIBOFFSETFINDER64_COMMIT := 2954b9955526f324345531751f49814c98075767 ++DEB_LIBOFFSETFINDER64_V ?= $(LIBOFFSETFINDER64_VERSION) + + liboffsetfinder64-setup: setup +- $(call GITHUB_ARCHIVE,tihmstar,liboffsetfinder64,$(LIBOFFSETFINDER64_COMMIT),$(LIBOFFSETFINDER64_COMMIT)) ++ $(call GITHUB_ARCHIVE,Cryptiiiic,liboffsetfinder64,$(LIBOFFSETFINDER64_COMMIT),$(LIBOFFSETFINDER64_COMMIT)) + $(call EXTRACT_TAR,liboffsetfinder64-$(LIBOFFSETFINDER64_COMMIT).tar.gz,liboffsetfinder64-$(LIBOFFSETFINDER64_COMMIT),liboffsetfinder64) + + $(SED) -i 's/git rev\-list \-\-count HEAD/printf ${LIBOFFSETFINDER64_VERSION}/g' $(BUILD_WORK)/liboffsetfinder64/configure.ac +@@ -20,12 +20,14 @@ liboffsetfinder64: + else + liboffsetfinder64: liboffsetfinder64-setup libgeneral libinsn img4tool openssl libplist + cd $(BUILD_WORK)/liboffsetfinder64 && ./autogen.sh \ +- $(DEFAULT_CONFIGURE_FLAGS) +- +$(MAKE) -C $(BUILD_WORK)/liboffsetfinder64 ++ $(DEFAULT_CONFIGURE_FLAGS) \ ++ --disable-shared + +$(MAKE) -C $(BUILD_WORK)/liboffsetfinder64 install \ + DESTDIR="$(BUILD_STAGE)/liboffsetfinder64" + +$(MAKE) -C $(BUILD_WORK)/liboffsetfinder64 install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/liboffsetfinder64/.build_complete + endif + +diff --git a/makefiles/libplist.mk b/makefiles/libplist.mk +index 14a4b8d..4677b6b 100644 +--- a/makefiles/libplist.mk ++++ b/makefiles/libplist.mk +@@ -17,12 +17,16 @@ else + libplist: libplist-setup + cd $(BUILD_WORK)/libplist && ./autogen.sh \ + $(DEFAULT_CONFIGURE_FLAGS) \ +- --without-cython ++ --without-cython \ ++ --disable-shared || true ++ cat $(BUILD_WORK)/libplist/config.log + +$(MAKE) -C $(BUILD_WORK)/libplist + +$(MAKE) -C $(BUILD_WORK)/libplist install \ + DESTDIR="$(BUILD_STAGE)/libplist" + +$(MAKE) -C $(BUILD_WORK)/libplist install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libplist/.build_complete + endif + +diff --git a/makefiles/libpng16.mk b/makefiles/libpng16.mk +index 4827b00..e3f9d60 100644 +--- a/makefiles/libpng16.mk ++++ b/makefiles/libpng16.mk +@@ -18,12 +18,15 @@ libpng16: + else + libpng16: libpng16-setup + cd $(BUILD_WORK)/libpng16 && ./configure -C \ +- $(DEFAULT_CONFIGURE_FLAGS) ++ $(DEFAULT_CONFIGURE_FLAGS) \ ++ --disable-shared + +$(MAKE) -C $(BUILD_WORK)/libpng16 + +$(MAKE) -C $(BUILD_WORK)/libpng16 install \ + DESTDIR=$(BUILD_STAGE)/libpng16 + +$(MAKE) -C $(BUILD_WORK)/libpng16 install \ + DESTDIR=$(BUILD_BASE) ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libpng16/.build_complete + endif + +diff --git a/makefiles/libusbmuxd.mk b/makefiles/libusbmuxd.mk +index c4fb00f..1ab8a4a 100644 +--- a/makefiles/libusbmuxd.mk ++++ b/makefiles/libusbmuxd.mk +@@ -16,12 +16,19 @@ libusbmuxd: + else + libusbmuxd: libusbmuxd-setup libplist + cd $(BUILD_WORK)/libusbmuxd && ./autogen.sh \ +- $(DEFAULT_CONFIGURE_FLAGS) ++ $(DEFAULT_CONFIGURE_FLAGS) \ ++ --disable-shared ++ cd $(BUILD_WORK)/libusbmuxd/include + +$(MAKE) -C $(BUILD_WORK)/libusbmuxd ++ cd $(BUILD_WORK)/libusbmuxd/common ++ +$(MAKE) -C $(BUILD_WORK)/libusbmuxd ++ cd $(BUILD_WORK)/libusbmuxd/src + +$(MAKE) -C $(BUILD_WORK)/libusbmuxd install \ + DESTDIR="$(BUILD_STAGE)/libusbmuxd" + +$(MAKE) -C $(BUILD_WORK)/libusbmuxd install \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libusbmuxd/.build_complete + endif + +diff --git a/makefiles/libzip.mk b/makefiles/libzip.mk +index b7b5019..ee0021b 100644 +--- a/makefiles/libzip.mk ++++ b/makefiles/libzip.mk +@@ -14,20 +14,27 @@ ifneq ($(wildcard $(BUILD_WORK)/libzip/.build_complete),) + libzip: + @echo "Using previously built libzip." + else +-libzip: libzip-setup xz openssl +- cd $(BUILD_WORK)/libzip && cmake . \ ++libzip: libzip-setup openssl ++ cd $(BUILD_WORK)/libzip && \ ++ cmake \ ++ . \ + $(DEFAULT_CMAKE_FLAGS) \ ++ -DBUILD_SHARED_LIBS=0 \ + -DCOMMON_ARCH=$(DEB_ARCH) \ + -DENABLE_COMMONCRYPTO=OFF \ + -DENABLE_GNUTLS=OFF \ + -DENABLE_MBEDTLS=OFF \ + -DENABLE_WINDOWS_CRYPTO=OFF \ +- -DENABLE_OPENSSL=ON +- +$(MAKE) -C $(BUILD_WORK)/libzip +- +$(MAKE) -C $(BUILD_WORK)/libzip install \ ++ -DENABLE_OPENSSL=ON && \ ++ $(SED) -i '77,81d' $(BUILD_WORK)/libzip/cmake_install.cmake ++ +$(MAKE) zip/fast -C $(BUILD_WORK)/libzip \ ++ LDFLAGS="$(LDFLAGS) -L/usr/lib -llzma" ++ +$(MAKE) -C $(BUILD_WORK)/libzip install/strip/fast \ + DESTDIR="$(BUILD_STAGE)/libzip" +- +$(MAKE) -C $(BUILD_WORK)/libzip install \ ++ +$(MAKE) -C $(BUILD_WORK)/libzip install/strip/fast \ + DESTDIR="$(BUILD_BASE)" ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/libzip/.build_complete + endif + +diff --git a/makefiles/lzfse.mk b/makefiles/lzfse.mk +index ee21826..1c0b436 100644 +--- a/makefiles/lzfse.mk ++++ b/makefiles/lzfse.mk +@@ -17,8 +17,10 @@ else + lzfse: lzfse-setup + cd $(BUILD_WORK)/lzfse && cmake . \ + $(DEFAULT_CMAKE_FLAGS) \ ++ -DBUILD_SHARED_LIBS=0 \ + . +- +$(MAKE) -C $(BUILD_WORK)/lzfse ++ +$(MAKE) lzfse/fast -C $(BUILD_WORK)/lzfse ++ $(SED) -i '48,60d' $(BUILD_WORK)/lzfse/cmake_install.cmake + +$(MAKE) -C $(BUILD_WORK)/lzfse install \ + DESTDIR="$(BUILD_STAGE)/lzfse" + +$(MAKE) -C $(BUILD_WORK)/lzfse install \ +diff --git a/makefiles/openssl.mk b/makefiles/openssl.mk +index e4c90df..59df7c6 100644 +--- a/makefiles/openssl.mk ++++ b/makefiles/openssl.mk +@@ -64,10 +64,12 @@ openssl: openssl-setup + shared \ + $(SSL_SCHEME) + +$(MAKE) -C $(BUILD_WORK)/openssl +- +$(MAKE) -C $(BUILD_WORK)/openssl install_sw install_ssldirs \ ++ +$(MAKE) -C $(BUILD_WORK)/openssl install_dev \ + DESTDIR=$(BUILD_STAGE)/openssl +- +$(MAKE) -C $(BUILD_WORK)/openssl install_sw \ ++ +$(MAKE) -C $(BUILD_WORK)/openssl install_dev \ + DESTDIR=$(BUILD_BASE) ++ find . -name '*.dylib' -exec rm -rf {} \; ++ find . -name '*.la*' -exec rm -rf {} \; + touch $(BUILD_WORK)/openssl/.build_complete + endif + +diff --git a/makefiles/xpwn.mk b/makefiles/xpwn.mk +index 1b8ca5f..6ed85c1 100644 +--- a/makefiles/xpwn.mk ++++ b/makefiles/xpwn.mk +@@ -23,16 +23,16 @@ xpwn: xpwn-setup libpng16 openssl + $(DEFAULT_CMAKE_FLAGS) \ + -DBZIP2_LIBRARIES="-L$(TARGET_SYSROOT)/usr/lib -lbz2" \ + -DZLIB_LIBRARY="-L$(TARGET_SYSROOT)/usr/lib -lz" +- +$(MAKE) -C $(BUILD_WORK)/xpwn +- +$(MAKE) -C $(BUILD_WORK)/xpwn install \ +- DESTDIR=$(BUILD_BASE) +- +$(MAKE) -C $(BUILD_WORK)/xpwn install \ +- DESTDIR=$(BUILD_STAGE)/xpwn ++ +$(MAKE) common/fast xpwn/fast -C $(BUILD_WORK)/xpwn ++ # +$(MAKE) -C $(BUILD_WORK)/xpwn install \ ++ # DESTDIR=$(BUILD_BASE) ++ # +$(MAKE) -C $(BUILD_WORK)/xpwn install \ ++ # DESTDIR=$(BUILD_STAGE)/xpwn + mkdir -p {$(BUILD_BASE),$(BUILD_STAGE)/xpwn}/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/{include/xpwn,lib/xpwn} + cp -a $(BUILD_WORK)/xpwn/includes/* $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn + cp -a $(BUILD_WORK)/xpwn/includes/* $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/include/xpwn +- cp -a $(BUILD_WORK)/xpwn/{ipsw-patch/libxpwn,minizip/libminizip,common/libcommon,hfs/libhfs,dmg/libdmg}.a $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn +- cp -a $(BUILD_WORK)/xpwn/{ipsw-patch/libxpwn,minizip/libminizip,common/libcommon,hfs/libhfs,dmg/libdmg}.a $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn ++ cp -a $(BUILD_WORK)/xpwn/{ipsw-patch/libxpwn,common/libcommon}.a $(BUILD_BASE)$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn ++ cp -a $(BUILD_WORK)/xpwn/{ipsw-patch/libxpwn,common/libcommon}.a $(BUILD_STAGE)/xpwn/$(MEMO_PREFIX)$(MEMO_SUB_PREFIX)/lib/xpwn + touch $(BUILD_WORK)/xpwn/.build_complete + endif +