mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-06 15:13:57 +02:00
Fix build for Mac App Store.
This commit is contained in:
parent
7ad6699bff
commit
b4950fe943
4 changed files with 42 additions and 25 deletions
|
@ -1281,13 +1281,16 @@ elseif (APPLE)
|
||||||
source_group(TREE ${res_loc} PREFIX Resources FILES ${strings_path})
|
source_group(TREE ${res_loc} PREFIX Resources FILES ${strings_path})
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
|
add_custom_command(TARGET Telegram
|
||||||
|
PRE_LINK
|
||||||
|
COMMAND mkdir -p $<TARGET_FILE_DIR:Telegram>/../Resources
|
||||||
|
COMMAND cp ${CMAKE_BINARY_DIR}/lib_ui.rcc $<TARGET_FILE_DIR:Telegram>/../Resources
|
||||||
|
)
|
||||||
if (NOT build_macstore)
|
if (NOT build_macstore)
|
||||||
add_custom_command(TARGET Telegram
|
add_custom_command(TARGET Telegram
|
||||||
PRE_LINK
|
PRE_LINK
|
||||||
COMMAND mkdir -p $<TARGET_FILE_DIR:Telegram>/../Frameworks
|
COMMAND mkdir -p $<TARGET_FILE_DIR:Telegram>/../Frameworks
|
||||||
COMMAND cp $<TARGET_FILE:Updater> $<TARGET_FILE_DIR:Telegram>/../Frameworks/
|
COMMAND cp $<TARGET_FILE:Updater> $<TARGET_FILE_DIR:Telegram>/../Frameworks/
|
||||||
COMMAND mkdir -p $<TARGET_FILE_DIR:Telegram>/../Resources
|
|
||||||
COMMAND cp ${CMAKE_BINARY_DIR}/lib_ui.rcc $<TARGET_FILE_DIR:Telegram>/../Resources
|
|
||||||
)
|
)
|
||||||
if (NOT DESKTOP_APP_DISABLE_CRASH_REPORTS)
|
if (NOT DESKTOP_APP_DISABLE_CRASH_REPORTS)
|
||||||
if (DESKTOP_APP_MAC_ARCH STREQUAL "x86_64" OR DESKTOP_APP_MAC_ARCH STREQUAL "arm64")
|
if (DESKTOP_APP_MAC_ARCH STREQUAL "x86_64" OR DESKTOP_APP_MAC_ARCH STREQUAL "arm64")
|
||||||
|
@ -1342,6 +1345,8 @@ if (build_macstore)
|
||||||
COMMAND rm -rf $<TARGET_FILE_DIR:Telegram>/../Frameworks
|
COMMAND rm -rf $<TARGET_FILE_DIR:Telegram>/../Frameworks
|
||||||
COMMAND mkdir -p $<TARGET_FILE_DIR:Telegram>/../Frameworks
|
COMMAND mkdir -p $<TARGET_FILE_DIR:Telegram>/../Frameworks
|
||||||
COMMAND cp -a ${libs_loc}/breakpad/src/client/mac/build/Release/Breakpad.framework $<TARGET_FILE_DIR:Telegram>/../Frameworks/Breakpad.framework
|
COMMAND cp -a ${libs_loc}/breakpad/src/client/mac/build/Release/Breakpad.framework $<TARGET_FILE_DIR:Telegram>/../Frameworks/Breakpad.framework
|
||||||
|
COMMAND rm -rf $<TARGET_FILE_DIR:Telegram>/../Frameworks/Breakpad.framework/Resources/crash_report_sender.app
|
||||||
|
COMMAND rm -rf $<TARGET_FILE_DIR:Telegram>/../Frameworks/Breakpad.framework/Resources/Inspector
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(bundle_identifier "com.tdesktop.Telegram$<$<CONFIG:Debug>:Debug>")
|
set(bundle_identifier "com.tdesktop.Telegram$<$<CONFIG:Debug>:Debug>")
|
||||||
|
|
10
Telegram/Telegram/Breakpad.entitlements
Normal file
10
Telegram/Telegram/Breakpad.entitlements
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>com.apple.security.app-sandbox</key>
|
||||||
|
<true/>
|
||||||
|
<key>com.apple.security.inherit</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
|
@ -261,6 +261,7 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||||
|
|
||||||
cd $FullExecPath
|
cd $FullExecPath
|
||||||
|
|
||||||
|
if [ "$BuildTarget" == "mac" ]; then
|
||||||
if [ "$NotarizeRequestIdAMD64" == "" ]; then
|
if [ "$NotarizeRequestIdAMD64" == "" ]; then
|
||||||
echo "Preparing single arm64 update.."
|
echo "Preparing single arm64 update.."
|
||||||
./$0 arm64 request_uuid $NotarizeRequestIdARM64
|
./$0 arm64 request_uuid $NotarizeRequestIdARM64
|
||||||
|
@ -270,6 +271,7 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||||
./$0 x86_64 request_uuid $NotarizeRequestIdAMD64
|
./$0 x86_64 request_uuid $NotarizeRequestIdAMD64
|
||||||
|
|
||||||
echo "Done."
|
echo "Done."
|
||||||
|
fi
|
||||||
cd $ReleasePath
|
cd $ReleasePath
|
||||||
fi
|
fi
|
||||||
if [ "$NotarizeRequestId" == "" ]; then
|
if [ "$NotarizeRequestId" == "" ]; then
|
||||||
|
@ -287,27 +289,26 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$MacArch" != "" ]; then
|
if [ "$MacArch" == "" ]; then
|
||||||
echo "Dumping debug symbols for single $MacArch.."
|
echo "Dumping debug symbols x86_64 from universal.."
|
||||||
"$HomePath/../../Libraries/breakpad/src/tools/mac/dump_syms/build/Release/dump_syms" "-a" "$MacArch" "$ReleasePath/$BundleName/Contents/MacOS/Telegram" > "$ReleasePath/$BinaryName.$MacArch.sym" 2>/dev/null
|
"$HomePath/../../Libraries/breakpad/src/tools/mac/dump_syms/build/Release/dump_syms" "-a" "x86_64" "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName" > "$ReleasePath/$BinaryName.x86_64.sym" 2>/dev/null
|
||||||
echo "Done!"
|
echo "Done!"
|
||||||
|
|
||||||
SymbolsHash=`head -n 1 "$ReleasePath/$BinaryName.$MacArch.sym" | awk -F " " 'END {print $4}'`
|
SymbolsHash=`head -n 1 "$ReleasePath/$BinaryName.x86_64.sym" | awk -F " " 'END {print $4}'`
|
||||||
echo "Copying $BinaryName.$MacArch.sym to $DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
echo "Copying $BinaryName.x86_64.sym to $DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||||
mkdir -p "$DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
mkdir -p "$DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||||
cp "$ReleasePath/$BinaryName.$MacArch.sym" "$DropboxSymbolsPath/$BinaryName/$SymbolsHash/$BinaryName.sym"
|
cp "$ReleasePath/$BinaryName.x86_64.sym" "$DropboxSymbolsPath/$BinaryName/$SymbolsHash/$BinaryName.sym"
|
||||||
echo "Done!"
|
echo "Done!"
|
||||||
|
|
||||||
echo "Dumping debug symbols $MacArch from universal.."
|
echo "Dumping debug symbols arm64 from universal.."
|
||||||
"$HomePath/../../Libraries/breakpad/src/tools/mac/dump_syms/build/Release/dump_syms" "-a" "$MacArch" "$ReleasePath/$BinaryName.app/Contents/MacOS/Telegram" > "$ReleasePath/$BinaryName.universal.$MacArch.sym" 2>/dev/null
|
"$HomePath/../../Libraries/breakpad/src/tools/mac/dump_syms/build/Release/dump_syms" "-a" "arm64" "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName" > "$ReleasePath/$BinaryName.arm64.sym" 2>/dev/null
|
||||||
echo "Done!"
|
echo "Done!"
|
||||||
|
|
||||||
DiffLines=`diff "$ReleasePath/$BinaryName.$MacArch.sym" "$ReleasePath/$BinaryName.universal.$MacArch.sym" | wc -l | awk -F " " 'END {print $1}'`
|
SymbolsHash=`head -n 1 "$ReleasePath/$BinaryName.arm64.sym" | awk -F " " 'END {print $4}'`
|
||||||
if [ "$DiffLines" != "0" ]; then
|
echo "Copying $BinaryName.arm64.sym to $DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||||
Error "Bad symbol dumps, different from universal and single-arch."
|
mkdir -p "$DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||||
fi
|
cp "$ReleasePath/$BinaryName.arm64.sym" "$DropboxSymbolsPath/$BinaryName/$SymbolsHash/$BinaryName.sym"
|
||||||
|
echo "Done!"
|
||||||
rm "$ReleasePath/$BinaryName.universal.$MacArch.sym"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Stripping the executable.."
|
echo "Stripping the executable.."
|
||||||
|
@ -322,6 +323,7 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "macstore" ]; then
|
||||||
if [ "$BuildTarget" == "mac" ]; then
|
if [ "$BuildTarget" == "mac" ]; then
|
||||||
codesign --force --deep --timestamp --options runtime --sign "Developer ID Application: John Preston" "$ReleasePath/$BundleName" --entitlements "$HomePath/Telegram/Telegram.entitlements"
|
codesign --force --deep --timestamp --options runtime --sign "Developer ID Application: John Preston" "$ReleasePath/$BundleName" --entitlements "$HomePath/Telegram/Telegram.entitlements"
|
||||||
elif [ "$BuildTarget" == "macstore" ]; then
|
elif [ "$BuildTarget" == "macstore" ]; then
|
||||||
|
codesign --force --sign "3rd Party Mac Developer Application: Telegram FZ-LLC (C67CF9S4VU)" "$ReleasePath/$BundleName/Contents/Frameworks/Breakpad.framework/Versions/A/Resources/breakpadUtilities.dylib" --entitlements "$HomePath/Telegram/Breakpad.entitlements"
|
||||||
codesign --force --deep --sign "3rd Party Mac Developer Application: Telegram FZ-LLC (C67CF9S4VU)" "$ReleasePath/$BundleName" --entitlements "$HomePath/Telegram/Telegram Lite.entitlements"
|
codesign --force --deep --sign "3rd Party Mac Developer Application: Telegram FZ-LLC (C67CF9S4VU)" "$ReleasePath/$BundleName" --entitlements "$HomePath/Telegram/Telegram Lite.entitlements"
|
||||||
echo "Making an installer.."
|
echo "Making an installer.."
|
||||||
productbuild --sign "3rd Party Mac Developer Installer: Telegram FZ-LLC (C67CF9S4VU)" --component "$ReleasePath/$BundleName" /Applications "$ReleasePath/$BinaryName.pkg"
|
productbuild --sign "3rd Party Mac Developer Installer: Telegram FZ-LLC (C67CF9S4VU)" --component "$ReleasePath/$BundleName" /Applications "$ReleasePath/$BinaryName.pkg"
|
||||||
|
|
|
@ -387,7 +387,7 @@ def runStages():
|
||||||
stage('patches', """
|
stage('patches', """
|
||||||
git clone https://github.com/desktop-app/patches.git
|
git clone https://github.com/desktop-app/patches.git
|
||||||
cd patches
|
cd patches
|
||||||
git checkout ab9e042ef6
|
git checkout bc18293b1c
|
||||||
""")
|
""")
|
||||||
|
|
||||||
stage('depot_tools', """
|
stage('depot_tools', """
|
||||||
|
|
Loading…
Add table
Reference in a new issue