mirror of
https://github.com/cookiengineer/audacity
synced 2025-04-29 23:29:41 +02:00
macOS: Fix building, update instructions
Signed-off-by: Panagiotis Vasilopoulos <hello@alwayslivid.com>
This commit is contained in:
parent
e0d0e26151
commit
79d7db6aa7
@ -26,7 +26,7 @@ elseif( CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
|||||||
|
|
||||||
install( CODE "set( APP_IDENTIFIER \"org.tenacityaudio.tenacity\" )" )
|
install( CODE "set( APP_IDENTIFIER \"org.tenacityaudio.tenacity\" )" )
|
||||||
install( CODE "get_filename_component( APP_LOCATION \${CMAKE_INSTALL_PREFIX}/Tenacity.app ABSOLUTE )" )
|
install( CODE "get_filename_component( APP_LOCATION \${CMAKE_INSTALL_PREFIX}/Tenacity.app ABSOLUTE )" )
|
||||||
install( CODE "set( APPLE_CODESIGN_ENTITLEMENTS ${CMAKE_SOURCE_DIR}/mac/Audacity.entitlements )")
|
install( CODE "set( APPLE_CODESIGN_ENTITLEMENTS ${CMAKE_SOURCE_DIR}/mac/Tenacity.entitlements )")
|
||||||
|
|
||||||
install( SCRIPT "scripts/build/macOS/SignMacos.cmake" )
|
install( SCRIPT "scripts/build/macOS/SignMacos.cmake" )
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
<string>application/x-audacity-project</string>
|
<string>application/x-audacity-project</string>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundleTypeName</key>
|
<key>CFBundleTypeName</key>
|
||||||
<string>Audacity Project</string>
|
<string>Tenacity Audio</string>
|
||||||
<key>CFBundleTypeOSTypes</key>
|
<key>CFBundleTypeOSTypes</key>
|
||||||
<array>
|
<array>
|
||||||
<string>auDp</string>
|
<string>auDp</string>
|
||||||
|
@ -89,8 +89,8 @@ then
|
|||||||
echo "Usage: ${0} srcroot dstroot"
|
echo "Usage: ${0} srcroot dstroot"
|
||||||
echo
|
echo
|
||||||
echo " srcroot path to the 'mac' subdirectory of your source tree"
|
echo " srcroot path to the 'mac' subdirectory of your source tree"
|
||||||
echo " dstroot path to where Audacity was built:"
|
echo " dstroot path to where Tenacity was built:"
|
||||||
echo " legacy build = /tmp/Audacity.dst"
|
echo " legacy build = /tmp/Tenacity.dst"
|
||||||
echo " cmake build = <build directory/bin/Release"
|
echo " cmake build = <build directory/bin/Release"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
@ -110,7 +110,7 @@ VERSION=$VERSION.$RELEASE.$REVISION
|
|||||||
IDENT=$(plist "${DSTROOT}/Tenacity.app/Contents/Info.plist" "CFBundleIdentifier")
|
IDENT=$(plist "${DSTROOT}/Tenacity.app/Contents/Info.plist" "CFBundleIdentifier")
|
||||||
|
|
||||||
#
|
#
|
||||||
# This depends on a file in the builders HOME directory called ".audacity_signing" that
|
# This depends on a file in the builders HOME directory called ".tenacity_signing" that
|
||||||
# contains the following four lines with the appropriate values specified. If the file
|
# contains the following four lines with the appropriate values specified. If the file
|
||||||
# doesn't exist or one of the values is missing the distribution will be built unsigned
|
# doesn't exist or one of the values is missing the distribution will be built unsigned
|
||||||
# and unnotarized.
|
# and unnotarized.
|
||||||
@ -127,19 +127,19 @@ IDENT=$(plist "${DSTROOT}/Tenacity.app/Contents/Info.plist" "CFBundleIdentifier"
|
|||||||
# "org.tenacityaudio.tenacity" as the application identifier.
|
# "org.tenacityaudio.tenacity" as the application identifier.
|
||||||
#
|
#
|
||||||
SIGNING=
|
SIGNING=
|
||||||
if [ -r ~/.audacity_signing ]
|
if [ -r ~/.tenacity_signing ]
|
||||||
then
|
then
|
||||||
source ~/.audacity_signing
|
source ~/.tenacity_signing
|
||||||
if [ -n "${CODESIGN_APP_IDENTITY}" -a -n "${NOTARIZE_USERNAME}" -a -n "${NOTARIZE_PASSWORD}" ]
|
if [ -n "${CODESIGN_APP_IDENTITY}" -a -n "${NOTARIZE_USERNAME}" -a -n "${NOTARIZE_PASSWORD}" ]
|
||||||
then
|
then
|
||||||
SIGNING="y"
|
SIGNING="y"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
VOL="Audacity $VERSION"
|
VOL="Tenacity $VERSION"
|
||||||
DMG="audacity-macos-$VERSION"
|
DMG="tenacity-macos-$VERSION"
|
||||||
|
|
||||||
echo "Audacity has been installed to: ${DSTROOT}"
|
echo "Tenacity has been installed to: ${DSTROOT}"
|
||||||
cd "${DSTROOT}/.."
|
cd "${DSTROOT}/.."
|
||||||
|
|
||||||
# Make sure we have consistent ownership and permissions
|
# Make sure we have consistent ownership and permissions
|
||||||
@ -156,7 +156,7 @@ then
|
|||||||
--timestamp \
|
--timestamp \
|
||||||
--identifier "${IDENT}" \
|
--identifier "${IDENT}" \
|
||||||
--options runtime \
|
--options runtime \
|
||||||
--entitlements "${SRCROOT}/Audacity.entitlements" \
|
--entitlements "${SRCROOT}/Tenacity.entitlements" \
|
||||||
--sign "${CODESIGN_APP_IDENTITY}" \
|
--sign "${CODESIGN_APP_IDENTITY}" \
|
||||||
${DSTROOT}/Tenacity.app/Contents/modules/*
|
${DSTROOT}/Tenacity.app/Contents/modules/*
|
||||||
|
|
||||||
@ -164,7 +164,7 @@ then
|
|||||||
--timestamp \
|
--timestamp \
|
||||||
--identifier "${IDENT}" \
|
--identifier "${IDENT}" \
|
||||||
--options runtime \
|
--options runtime \
|
||||||
--entitlements "${SRCROOT}/Audacity.entitlements" \
|
--entitlements "${SRCROOT}/Tenacity.entitlements" \
|
||||||
--sign "${CODESIGN_APP_IDENTITY}" \
|
--sign "${CODESIGN_APP_IDENTITY}" \
|
||||||
${DSTROOT}/Tenacity.app/Contents/plug-ins/*
|
${DSTROOT}/Tenacity.app/Contents/plug-ins/*
|
||||||
|
|
||||||
|
@ -2,12 +2,12 @@ To sign, notarize, staple, and build the distribution DMG, you need to have
|
|||||||
an Apple Developer ID and a certificate. Once you have obtained these, proceed
|
an Apple Developer ID and a certificate. Once you have obtained these, proceed
|
||||||
with the following:
|
with the following:
|
||||||
|
|
||||||
1) Create a file in your home directory called ".audacity_signing" and add
|
1) Create a file in your home directory called ".tenacity_signing" and add
|
||||||
the following three lines. Ensure you put in the email address you used
|
the following three lines. Ensure you put in the email address you used
|
||||||
for your Apple Developer account:
|
for your Apple Developer account:
|
||||||
|
|
||||||
NOTARIZE_USERNAME="specify your Apple developer email address"
|
NOTARIZE_USERNAME="specify your Apple developer email address"
|
||||||
NOTARIZE_PASSWORD="@keychain:AUDACITY_PASSWORD"
|
NOTARIZE_PASSWORD="@keychain:TENACITY_PASSWORD"
|
||||||
CODESIGN_APP_IDENTITY="Developer ID Application:"
|
CODESIGN_APP_IDENTITY="Developer ID Application:"
|
||||||
|
|
||||||
2) You need to create an application specific password in your Developer
|
2) You need to create an application specific password in your Developer
|
||||||
@ -21,19 +21,19 @@ with the following:
|
|||||||
|
|
||||||
https://support.apple.com/guide/keychain-access/add-a-password-to-a-keychain-kyca1120/mac
|
https://support.apple.com/guide/keychain-access/add-a-password-to-a-keychain-kyca1120/mac
|
||||||
|
|
||||||
Use "AUDACITY_PASSWORD" for the name as it must match the NOTARIZE_PASSWORD
|
Use "TENACITY_PASSWORD" for the name as it must match the NOTARIZE_PASSWORD
|
||||||
value above. Storing the password in your keychain protects it from curious
|
value above. Storing the password in your keychain protects it from curious
|
||||||
eyes.
|
eyes.
|
||||||
|
|
||||||
4) Build the Release version of Audacity. You can follow the cmake_build.txt
|
4) Build the Release version of Tenacity. You can follow the cmake_build.txt
|
||||||
instructions in this folder. Once complete, you should find "Tenacity.app"
|
instructions in this folder. Once complete, you should find "Tenacity.app"
|
||||||
in:
|
in:
|
||||||
|
|
||||||
audacity/bld/bin/Release
|
tenacity/bld/bin/Release
|
||||||
|
|
||||||
5) Open a terminal and change to the CMake build directory:
|
5) Open a terminal and change to the CMake build directory:
|
||||||
|
|
||||||
audacity/bld
|
tenacity/bld
|
||||||
|
|
||||||
6) Run this script to sign, notarize, staple and create the distribution DMG:
|
6) Run this script to sign, notarize, staple and create the distribution DMG:
|
||||||
|
|
||||||
@ -41,8 +41,8 @@ with the following:
|
|||||||
|
|
||||||
As it goes through the notarization process twice, once for the app bundle
|
As it goes through the notarization process twice, once for the app bundle
|
||||||
and again for the DMG, it will take awhile to run and you will see progress
|
and again for the DMG, it will take awhile to run and you will see progress
|
||||||
while waiting. If it is successful, you will find the Audacity DMG in
|
while waiting. If it is successful, you will find the Tenacity DMG in
|
||||||
"audacity/bld/bin" and you will receive an email confirming it was notarized.
|
"tenacity/bld/bin" and you will receive an email confirming it was notarized.
|
||||||
|
|
||||||
In the event of a failure, you will find a URL in the output messages
|
In the event of a failure, you will find a URL in the output messages
|
||||||
displayed in the terminal. Paste that into a browser for information as
|
displayed in the terminal. Paste that into a browser for information as
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Arguments:
|
# Arguments:
|
||||||
# APP_IDENTIFIER - app identifier
|
# APP_IDENTIFIER - app identifier
|
||||||
# APP_LOCATION - the path to Tenacity.app
|
# APP_LOCATION - the path to Tenacity.app
|
||||||
# DMG_LOCATION - the path to Audaicty dmg package
|
# DMG_LOCATION - the path to Tenacity dmg package
|
||||||
# APPLE_NOTARIZATION_USER_NAME - notarization user name
|
# APPLE_NOTARIZATION_USER_NAME - notarization user name
|
||||||
# APPLE_NOTARIZATION_PASSWORD - notarization password
|
# APPLE_NOTARIZATION_PASSWORD - notarization password
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user