Commit e8e87a32 authored by garykac@chromium.org's avatar garykac@chromium.org

[Chromoting] Sign uninstaller and fixup user-visible package and dmg names.

DMG and final PKG names are now properly branded and have spaces to make
them more human-readable.
Update the script to sign the chromoting host uninstaller.

Review URL: http://codereview.chromium.org/10243015

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@134567 0039d316-1c4b-4281-b951-d872f2087c98
parent 745fc0dc
......@@ -15,7 +15,8 @@
set -e -u
# Binaries to sign.
ME2ME_HOST=PrivilegedHelperTools/org.chromium.chromoting.me2me_host
ME2ME_HOST='PrivilegedHelperTools/org.chromium.chromoting.me2me_host'
UNINSTALLER='Applications/@@HOST_UNINSTALLER_NAME@@.app'
# Iceberg creates this directory to write its output.
PKG_DIR=build
......@@ -29,13 +30,13 @@ PKGPROJ_HOST='ChromotingHost.packproj'
PKGPROJ_HOST_SERVICE='ChromotingHostService.packproj'
PKGPROJ_HOST_UNINSTALLER='ChromotingHostUninstaller.packproj'
# Final mpkg name (for Official builds).
PKG_FINAL='ChromeRemoteDesktopHost.mpkg'
# Final (user-visible) mpkg name.
PKG_FINAL='@@HOST_PKG@@.mpkg'
DMG_TEMP=dmg_tmp
DMG_NAME='Chrome Remote Desktop'
DMG_NAME='@@DMG_NAME@@'
DMG_DIR="${DMG_TEMP}/${DMG_NAME}"
DMG_FILENAME='Chrome Remote Desktop.dmg'
DMG_FILENAME='@@DMG_NAME@@.dmg'
ME="$(basename "${0}")"
readonly ME
......@@ -72,26 +73,32 @@ verify_empty_dir() {
shopt -u nullglob dotglob
if [[ ${#dir_contents[@]} -ne 0 ]]; then
err "output directory must be empty"
err "Output directory must be empty"
exit 1
fi
}
sign_binaries() {
local input_dir="${1}"
sign() {
local name="${1}"
local keychain="${2}"
local id="${3}"
me2me_host="${input_dir}/${ME2ME_HOST}"
if [[ ! -f "${me2me_host}" ]]; then
err_exit "Input file doesn't exist: ${me2me_host}"
if [[ ! -e "${name}" ]]; then
err_exit "Input file doesn't exist: ${name}"
fi
echo Signing "${me2me_host}"
codesign -vv -s "${id}" --keychain "${keychain}" "${me2me_host}"
echo Signing "${name}"
codesign -vv -s "${id}" --keychain "${keychain}" "${name}"
codesign -v "${name}"
}
sign_binaries() {
local input_dir="${1}"
local keychain="${2}"
local id="${3}"
# Verify signing.
codesign -v "${me2me_host}"
sign "${input_dir}/${ME2ME_HOST}" "${keychain}" "${id}"
sign "${input_dir}/${UNINSTALLER}" "${keychain}" "${id}"
}
build_package() {
......@@ -117,6 +124,7 @@ build_dmg() {
echo "Building .dmg..."
mkdir -p "${input_dir}/${DMG_DIR}/${PKG_FINAL}"
# Copy .mpkg installer.
echo "Copying ${input_dir}/${PKG_DIR}/${PKG_FINAL}"
ditto "${input_dir}/${PKG_DIR}/${PKG_FINAL}" \
"${input_dir}/${DMG_DIR}/${PKG_FINAL}"
# Copy .keystone_install script to top level of .dmg.
......
......@@ -1272,12 +1272,13 @@
'HOST_NAME=<(host_name)',
'HOST_SERVICE_NAME=<(host_service_name)',
'HOST_UNINSTALLER_NAME=<(host_uninstaller_name)',
'HOST_PKG=<!(echo <(host_name) | sed "s/ //g")',
'HOST_PKG=<(host_name)',
'HOST_SERVICE_PKG=<!(echo <(host_service_name) | sed "s/ //g")',
'HOST_UNINSTALLER_PKG=<!(echo <(host_uninstaller_name) | sed "s/ //g")',
'BUNDLE_ID_HOST=<(bundle_prefix).<(host_name)',
'BUNDLE_ID_HOST_SERVICE=<(bundle_prefix).<(host_service_name)',
'BUNDLE_ID_HOST_UNINSTALLER=<(bundle_prefix).<(host_uninstaller_name)',
'DMG_NAME=<(host_name)',
],
}], # OS=="mac"
['OS=="win"', {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment