mirror of
https://github.com/SideStore/SideStore.git
synced 2026-02-09 06:43:25 +01:00
[Makefile]: Make AltBackup.ipa generation more robust
This commit is contained in:
@@ -2534,7 +2534,7 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = /bin/sh;
|
shellPath = /bin/sh;
|
||||||
shellScript = "#!/bin/sh\n\necho \"Build directory: $BUILD_DIR\"\necho \"Configuration build directory: $CONFIGURATION_BUILD_DIR\"\n\necho \">>>>>>>>> Xcode-Derived-Data <<<<<<<<<<\"\nfind \"$BUILD_DIR\" -maxdepth 7 -exec ls -ld {} + || true # List contents if directory exists \n# ls -la ~/Library/Developer/Xcode/DerivedData || true # List contents if directory exists \necho \"\"\n\n# diagnostics\n# exit 0\n\n# Define the path to your Makefile\nMAKEFILE_PATH=\"${PROJECT_DIR}/\"\n\n# Navigate to the directory containing the Makefile\ncd \"$MAKEFILE_PATH\" || exit 1\n\n# Run the make target 'ipa-altbackup'\nmake -B ipa-altbackup\n\n# Ensure that the ipa-altbackup process finishes before continuing\nif [ $? -ne 0 ]; then\n echo \"Error: ipa-altbackup failed\"\n exit 1\nelse\n echo \"ipa-altbackup completed successfully\"\nfi\n# Type a script or drag a script file from your workspace to insert its path.\n";
|
shellScript = "#!/bin/sh\n\necho \"Build directory: $BUILD_DIR\"\necho \"Configuration build directory: $CONFIGURATION_BUILD_DIR\"\n\n# diagnostics\n# echo \">>>>>>>>> Xcode-Derived-Data <<<<<<<<<<\"\n# find \"$BUILD_DIR\" -maxdepth 7 -exec ls -ld {} + || true # List contents if directory exists \n# # ls -la ~/Library/Developer/Xcode/DerivedData || true # List contents if directory exists \n# echo \"\"\n\n# diagnostics\n# exit 0\n\n# Define the path to your Makefile\nMAKEFILE_PATH=\"${PROJECT_DIR}/\"\n\n# Navigate to the directory containing the Makefile\ncd \"$MAKEFILE_PATH\" || exit 1\n\n# Run the make target 'ipa-altbackup'\nmake -B copy-altbackup ipa-altbackup\n\n# Ensure that the ipa-altbackup process finishes before continuing\nif [ $? -ne 0 ]; then\n echo \"Error: ipa-altbackup failed\"\n exit 1\nelse\n echo \"ipa-altbackup completed successfully\"\nfi\n# Type a script or drag a script file from your workspace to insert its path.\n";
|
||||||
};
|
};
|
||||||
AEDB4E9409D2CEE1EA126980 /* [CP] Check Pods Manifest.lock */ = {
|
AEDB4E9409D2CEE1EA126980 /* [CP] Check Pods Manifest.lock */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
|||||||
65
Makefile
65
Makefile
@@ -182,11 +182,15 @@ ipa:
|
|||||||
# Global Variables
|
# Global Variables
|
||||||
|
|
||||||
# Ensure this is set by the environment or passed as an argument
|
# Ensure this is set by the environment or passed as an argument
|
||||||
|
CONFIGURATION_BUILD_DIR ?= # this is the path to your main app (possibly in derived-data unless changed manually)
|
||||||
CODESIGNING_FOLDER_PATH ?= # this is the path to your main app (possibly in derived-data unless changed manually)
|
CODESIGNING_FOLDER_PATH ?= # this is the path to your main app (possibly in derived-data unless changed manually)
|
||||||
|
|
||||||
APP_PATH := "$(CODESIGNING_FOLDER_PATH)"
|
# CONFIGURATION_BUILD_DIR = # this is the path to your main app (possibly in derived-data unless changed manually)
|
||||||
APP_PATH := $(if $(APP_PATH),$(APP_PATH),$(CONFIGURATION_BUILD_DIR))
|
# CODESIGNING_FOLDER_PATH = # this is the path to your main app (possibly in derived-data unless changed manually)
|
||||||
VAR_USED := $(if $(CODESIGNING_FOLDER_PATH),"CODESIGNING_FOLDER_PATH","CONFIGURATION_BUILD_DIR")
|
|
||||||
|
ROOT_DIR := $(CONFIGURATION_BUILD_DIR)
|
||||||
|
ROOT_DIR := $(if $(ROOT_DIR),$(ROOT_DIR),$(CODESIGNING_FOLDER_PATH)/..)
|
||||||
|
VAR_USED := $(if $(CONFIGURATION_BUILD_DIR),"CONFIGURATION_BUILD_DIR","CODESIGNING_FOLDER_PATH")
|
||||||
|
|
||||||
TARGET_BUILD_DIR := build
|
TARGET_BUILD_DIR := build
|
||||||
TARGET_ARCHIVE_DIR := altbackup.xcarchive
|
TARGET_ARCHIVE_DIR := altbackup.xcarchive
|
||||||
@@ -195,17 +199,33 @@ TARGET_DSYM_NAME := AltBackup.app.dSYM
|
|||||||
TARGET_IPA_NAME := AltBackup.ipa
|
TARGET_IPA_NAME := AltBackup.ipa
|
||||||
|
|
||||||
|
|
||||||
ALT_APP_SRC_PARENT := $(shell readlink -f "$(APP_PATH)/..")
|
ALT_APP_SRC_PARENT := $(shell readlink -f "$(ROOT_DIR)")
|
||||||
ALT_APP_SRC := $(shell readlink -f "$(ALT_APP_SRC_PARENT)/$(TARGET_NAME)")
|
ALT_APP_SRC := $(ALT_APP_SRC_PARENT)/$(TARGET_NAME)
|
||||||
ALT_APP_DSYM_SRC := $(shell readlink -f "$(ALT_APP_SRC_PARENT)/$(TARGET_DSYM_NAME)")
|
ALT_APP_DSYM_SRC := $(ALT_APP_SRC_PARENT)/$(TARGET_DSYM_NAME)
|
||||||
ALT_APP_DST_ARCHIVE := "$(TARGET_BUILD_DIR)/$(TARGET_ARCHIVE_DIR)"
|
ALT_APP_DST_ARCHIVE := "$(TARGET_BUILD_DIR)/$(TARGET_ARCHIVE_DIR)"
|
||||||
ALT_APP_DST := "$(ALT_APP_DST_ARCHIVE)/Products/Applications/$(TARGET_NAME)"
|
ALT_APP_DST := "$(ALT_APP_DST_ARCHIVE)/Products/Applications/$(TARGET_NAME)"
|
||||||
ALT_APP_DSYM_DST := "$(ALT_APP_DST_ARCHIVE)/dSYMs/$(TARGET_DSYM_NAME)"
|
ALT_APP_DSYM_DST := "$(ALT_APP_DST_ARCHIVE)/dSYMs/$(TARGET_DSYM_NAME)"
|
||||||
ALT_APP_PAYLOAD_DST := "$(ALT_APP_DST_ARCHIVE)/Payload"
|
ALT_APP_PAYLOAD_DST := "$(ALT_APP_DST_ARCHIVE)/Payload"
|
||||||
ALT_APP_IPA_DST := "$(TARGET_BUILD_DIR)/$(TARGET_IPA_NAME)"
|
ALT_APP_IPA_DST := "$(TARGET_BUILD_DIR)/$(TARGET_IPA_NAME)"
|
||||||
|
|
||||||
copy-altbackup:
|
checkPaths:
|
||||||
@# @echo " Copying archive data from '$(ALT_APP_SRC_PARENT)'"
|
@# Check if ALT_APP_SRC_PARENT is empty, abort if true
|
||||||
|
@if [ -z "$(ALT_APP_SRC_PARENT)" ]; then \
|
||||||
|
echo "Error: ALT_APP_SRC_PARENT is empty!"; \
|
||||||
|
echo " Environment variable $$VAR_USED = $$APP_PATH"; \
|
||||||
|
echo " Please set it to a valid build artifacts directory"; \
|
||||||
|
echo ""; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
copy-altbackup: checkPaths
|
||||||
|
@echo ''
|
||||||
|
@echo " CONFIGURATION_BUILD_DIR = '$(CONFIGURATION_BUILD_DIR)'"
|
||||||
|
@echo " CODESIGNING_FOLDER_PATH = '$(CODESIGNING_FOLDER_PATH)'"
|
||||||
|
@echo " Copying archive data from ALT_APP_SRC_PARENT = '$(ALT_APP_SRC_PARENT)'"
|
||||||
|
@echo ''
|
||||||
|
|
||||||
@bash -c '\
|
@bash -c '\
|
||||||
SOURCES=("$(ALT_APP_SRC)" "$(ALT_APP_DSYM_SRC)"); \
|
SOURCES=("$(ALT_APP_SRC)" "$(ALT_APP_DSYM_SRC)"); \
|
||||||
TARGETS=("$(ALT_APP_DST)" "$(ALT_APP_DSYM_DST)"); \
|
TARGETS=("$(ALT_APP_DST)" "$(ALT_APP_DSYM_DST)"); \
|
||||||
@@ -218,16 +238,20 @@ copy-altbackup:
|
|||||||
\
|
\
|
||||||
echo " Copying $$TGT_NAME from \"$$SRC\""; \
|
echo " Copying $$TGT_NAME from \"$$SRC\""; \
|
||||||
if [ ! -d "$$SRC" ]; then \
|
if [ ! -d "$$SRC" ]; then \
|
||||||
echo "Error: $$TGT_NAME not found in \"$$SRC\""; \
|
echo "SRC=$$SRC ALT_APP_DSYM_SRC=$(ALT_APP_DSYM_SRC)"; \
|
||||||
echo " Environment variable $(VAR_USED) = $(APP_PATH)"; \
|
if [ "$$SRC" == "$(ALT_APP_DSYM_SRC)" ]; then \
|
||||||
echo " Please set it to a valid build artifacts directory"; \
|
echo "Warning: $$TGT_NAME not found in \"$$SRC\" - IGNORED"; \
|
||||||
echo ""; \
|
echo ""; \
|
||||||
exit 1; \
|
else \
|
||||||
|
echo "Error: $$TGT_NAME not found in \"$$SRC\""; \
|
||||||
|
echo ""; \
|
||||||
|
exit 1; \
|
||||||
|
fi \
|
||||||
else \
|
else \
|
||||||
echo " Copied $$TGT_NAME into TARGET = $$TGT"; \
|
|
||||||
rm -rf "$$TGT"; \
|
rm -rf "$$TGT"; \
|
||||||
mkdir -p "$$TGT"; \
|
mkdir -p "$$TGT"; \
|
||||||
cp -R "$(ALT_APP_SRC_PARENT)/$$TGT_NAME" "$${TGT%/*}"; \
|
cp -R "$(ALT_APP_SRC_PARENT)/$(TGT_NAME)" "$$TGT"; \
|
||||||
|
echo " Copied $$TGT_NAME into TARGET = $$TGT"; \
|
||||||
echo ""; \
|
echo ""; \
|
||||||
fi; \
|
fi; \
|
||||||
done \
|
done \
|
||||||
@@ -242,13 +266,14 @@ copy-altbackup:
|
|||||||
# @echo " fakesign completed"
|
# @echo " fakesign completed"
|
||||||
# @echo ""
|
# @echo ""
|
||||||
|
|
||||||
# ipa-altbackup: fakesign-altbackup
|
# ipa-altbackup:
|
||||||
ipa-altbackup: copy-altbackup
|
ipa-altbackup: checkPaths copy-altbackup
|
||||||
|
# ipa-altbackup: checkPaths copy-altbackup fakesign-altbackup
|
||||||
@echo " Creating IPA for AltBackup"
|
@echo " Creating IPA for AltBackup"
|
||||||
@rm -rf "$(ALT_APP_PAYLOAD_DST)"
|
@rm -rf "$(ALT_APP_PAYLOAD_DST)"
|
||||||
@mkdir -p "$(ALT_APP_PAYLOAD_DST)/$(TARGET_NAME)"
|
@mkdir -p "$(ALT_APP_PAYLOAD_DST)/$(TARGET_NAME)"
|
||||||
@#### @chmod -R 777 "$(ALT_APP_PAYLOAD_DST)" || true
|
@echo " Copying from $(ALT_APP_SRC) into $(ALT_APP_PAYLOAD_DST)"
|
||||||
@cp -R "$(ALT_APP_SRC)" "$(ALT_APP_PAYLOAD_DST)"
|
@cp -R -f "$(ALT_APP_SRC)/" "$(ALT_APP_PAYLOAD_DST)/$(TARGET_NAME)"
|
||||||
@pushd "$(ALT_APP_DST_ARCHIVE)" && zip -r "../../$(ALT_APP_IPA_DST)" Payload && popd
|
@pushd "$(ALT_APP_DST_ARCHIVE)" && zip -r "../../$(ALT_APP_IPA_DST)" Payload && popd
|
||||||
@cp "$(ALT_APP_IPA_DST)" AltStore/Resources
|
@cp -f "$(ALT_APP_IPA_DST)" AltStore/Resources
|
||||||
@echo " IPA created: AltStore/Resources/AltBackup.ipa"
|
@echo " IPA created: AltStore/Resources/AltBackup.ipa"
|
||||||
Reference in New Issue
Block a user