Skip to content

Commit

Permalink
[tools/codesign][tvOS] Do fake sign, needed for jailbroken devices
Browse files Browse the repository at this point in the history
  • Loading branch information
sy6sy2 committed Aug 25, 2020
1 parent f11d5f0 commit 0a33c06
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 37 deletions.
39 changes: 18 additions & 21 deletions tools/darwin/Support/Codesign.command
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ set -x
LIST_BINARY_EXTENSIONS="dylib so 0 vis pvr app"

GEN_ENTITLEMENTS="$NATIVEPREFIX/bin/gen_entitlements.py"
IOS11_ENTITLEMENTS="$XBMC_DEPENDS/share/ios11_entitlements.xml"
DARWIN_EMBEDDED_ENTITLEMENTS="$XBMC_DEPENDS/share/darwin_embedded_entitlements.xml"
LDID="$NATIVEPREFIX/bin/ldid"

if [ "${PLATFORM_NAME}" == "macosx" ]; then
Expand All @@ -25,26 +25,23 @@ if [[ "$MACOS" || "${PLATFORM_NAME}" == "iphoneos" || "${PLATFORM_NAME}" == "app
CONTENTS_PATH="${CODESIGNING_FOLDER_PATH}"
fi

# todo: is this required anymore?
if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
#do fake sign - needed for jailbroken ios5.1 devices for some reason
if [ -f ${LDID} ]; then
find ${BUILT_PRODUCTS_DIR}/${EXECUTABLE_FOLDER_PATH}/ -name "*.dylib" | xargs ${LDID} -S${IOS11_ENTITLEMENTS}
find ${BUILT_PRODUCTS_DIR}/${EXECUTABLE_FOLDER_PATH}/ -name "*.so" | xargs ${LDID} -S${IOS11_ENTITLEMENTS}
${LDID} -S${IOS11_ENTITLEMENTS} ${BUILT_PRODUCTS_DIR}/${EXECUTABLE_FOLDER_PATH}/${EXECUTABLE_NAME}

#repackage python eggs
EGGS=$(find "${CONTENTS_PATH}" -name "*.egg" -type f)
for i in $EGGS; do
echo $i
mkdir del
unzip -q $i -d del
find ./del/ -name "*.so" -type f | xargs ${LDID} -S${IOS11_ENTITLEMENTS}
rm $i
cd del && zip -qr $i ./* && cd ..
rm -r ./del/
done
fi
# do fake sign - needed for iOS >=5.1 and tvOS >=10.2 jailbroken devices
# see http://www.saurik.com/id/8
if [ -f "${LDID}" ]; then
find "${BUILT_PRODUCTS_DIR}/${EXECUTABLE_FOLDER_PATH}/" -iname "*.dylib" -or -iname "*.so" | xargs "${LDID}" -S"${DARWIN_EMBEDDED_ENTITLEMENTS}"
"${LDID}" "-S${DARWIN_EMBEDDED_ENTITLEMENTS}" "${BUILT_PRODUCTS_DIR}/${EXECUTABLE_FOLDER_PATH}/${EXECUTABLE_NAME}"

# repackage python eggs
EGGS=$(find "${CONTENTS_PATH}" -iname "*.egg" -type f)
for i in "$EGGS"; do
echo "$i"
mkdir del
unzip -q "$i" -d del
find ./del/ -iname "*.so" -type f | xargs "${LDID}" -S"${DARWIN_EMBEDDED_ENTITLEMENTS}"
rm "$i"
cd del && zip -qr "$i" ./* && cd ..
rm -r ./del/
done
fi

# pull the CFBundleIdentifier out of the built xxx.app
Expand Down
2 changes: 1 addition & 1 deletion tools/depends/target/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ ifeq ($(OS),darwin_embedded)
DEPENDS += boblight
EXCLUDED_DEPENDS += libshairplay libplist
endif
DEPENDS += iosentitlements
DEPENDS += darwin-embedded-entitlements
endif

ifeq ($(OS),osx)
Expand Down
15 changes: 15 additions & 0 deletions tools/depends/target/darwin-embedded-entitlements/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
include ../../Makefile.include
DEPS= ../../Makefile.include Makefile darwin_embedded_entitlements.xml

DARWIN_EMBEDDED_ENT=$(PREFIX)/share/darwin_embedded_entitlements.xml

all: $(DARWIN_EMBEDDED_ENT)

$(DARWIN_EMBEDDED_ENT):
mkdir -p $(PREFIX)/share
cp darwin_embedded_entitlements.xml $(DARWIN_EMBEDDED_ENT)


clean:
distclean::
rm -f $(DARWIN_EMBEDDED_ENT)
15 changes: 0 additions & 15 deletions tools/depends/target/iosentitlements/Makefile

This file was deleted.

0 comments on commit 0a33c06

Please sign in to comment.