Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8044)

Unified Diff: chrome_mac/Google Chrome Packaging/sign_versioned_dir.sh

Issue 85333005: Update reference builds to Chrome 32.0.1700.19 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/reference_builds/
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome_mac/Google Chrome Packaging/sign_app.sh ('k') | chrome_mac/Google Chrome Packaging/xz » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome_mac/Google Chrome Packaging/sign_versioned_dir.sh
===================================================================
--- chrome_mac/Google Chrome Packaging/sign_versioned_dir.sh (revision 0)
+++ chrome_mac/Google Chrome Packaging/sign_versioned_dir.sh (revision 0)
@@ -0,0 +1,71 @@
+#!/bin/bash -p
+
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# Using codesign, sign the contents of the versioned directory. Namely, this
+# includes the framework and helper app. After signing, the signatures are
+# verified.
+
+set -eu
+
+# Environment sanitization. Set a known-safe PATH. Clear environment variables
+# that might impact the interpreter's operation. The |bash -p| invocation
+# on the #! line takes the bite out of BASH_ENV, ENV, and SHELLOPTS (among
+# other features), but clearing them here ensures that they won't impact any
+# shell scripts used as utility programs. SHELLOPTS is read-only and can't be
+# unset, only unexported.
+export PATH="/usr/bin:/bin:/usr/sbin:/sbin"
+unset BASH_ENV CDPATH ENV GLOBIGNORE IFS POSIXLY_CORRECT
+export -n SHELLOPTS
+
+ME="$(basename "${0}")"
+readonly ME
+
+if [[ ${#} -ne 3 ]]; then
+ echo "usage: ${ME} app_path codesign_keychain codesign_id" >& 2
+ exit 1
+fi
+
+app_path="${1}"
+codesign_keychain="${2}"
+codesign_id="${3}"
+
+versioned_dir="${app_path}/Contents/Versions/32.0.1700.19"
+
+# An .app bundle to be signed can be signed directly. Normally, signing a
+# framework bundle requires that each version within be signed individually.
+# http://developer.apple.com/mac/library/technotes/tn2007/tn2206.html#TNTAG13
+# In Chrome's case, the framework bundle is unversioned, so it too can be
+# signed directly. See copy_framework_unversioned.sh.
+
+framework="${versioned_dir}/Google Chrome Framework.framework"
+helper_app="${versioned_dir}/Google Chrome Helper.app"
+helper_eh_app="${versioned_dir}/Google Chrome Helper EH.app"
+helper_np_app="${versioned_dir}/Google Chrome Helper NP.app"
+
+requirement_suffix="\
+and certificate leaf = H\"85cee8254216185620ddc8851c7a9fc4dfe120ef\"\
+"
+
+codesign -s "${codesign_id}" --keychain "${codesign_keychain}" "${framework}" \
+ -r="designated => identifier \"com.google.Chrome.framework\" \
+${requirement_suffix}"
+codesign -s "${codesign_id}" --keychain "${codesign_keychain}" "${helper_app}" \
+ -r="designated => identifier \"com.google.Chrome.helper\" \
+${requirement_suffix}"
+codesign -s "${codesign_id}" --keychain "${codesign_keychain}" \
+ "${helper_eh_app}" \
+ -r="designated => identifier \"com.google.Chrome.helper.EH\" \
+${requirement_suffix}"
+codesign -s "${codesign_id}" --keychain "${codesign_keychain}" \
+ "${helper_np_app}" \
+ -r="designated => identifier \"com.google.Chrome.helper.NP\" \
+${requirement_suffix}"
+
+# Verify everything.
+codesign -v "${framework}"
+codesign -v "${helper_app}"
+codesign -v "${helper_eh_app}"
+codesign -v "${helper_np_app}"
Property changes on: chrome_mac/Google Chrome Packaging/sign_versioned_dir.sh
___________________________________________________________________
Added: svn:executable
+ *
« no previous file with comments | « chrome_mac/Google Chrome Packaging/sign_app.sh ('k') | chrome_mac/Google Chrome Packaging/xz » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698