123456789101112131415161718192021222324252627282930313233343536 |
- #!/usr/bin/env bash
- ####################################################
- # Signing compiled ruby for OSX, for details visit #
- # https://rvm.io/rubies/codesign/ #
- ####################################################
- # Go to subprocess so we can use returns and 'use' ruby temporarily
- (
- # Require Mac OS
- [[ "${_system_type}" == Darwin ]] || return 1
- # Require 10.7 - FIXME: Should be 10.7 or newer.
- [[ "${_system_version}" == 10.7* ]] || return 2
- # Find out ruby executable to sign
- typeset _ruby_name
- _ruby_name="$(sed -n '/^ruby_install_name=/ {s/ruby_install_name="\(.*\)"/\1/; p; };' "$MY_RUBY_HOME/config" )"
- # Require rvm_codesign_identity
- [[ -n "${rvm_codesign_identity:-}" ]] || {
- rvm_warn "'rvm_codesign_identity' is not set so RVM can't sign ${_ruby_name}\n" \
- "Set it in ~/.rvmrc after reading the following about OS X code signing:\n" \
- "https://developer.apple.com/library/mac/#documentation/Security/Conceptual/CodeSigningGuide/Introduction/Introduction.html"
- return 3
- }
- # Require using ruby - btw this should not happen
- __rvm_use || {
- rvm_warn "can not use ruby which was just installed ... so can not sign it neither"
- return 4
- }
- # Sign ruby
- /usr/bin/codesign -f -s "${rvm_codesign_identity}" "$(which "${_ruby_name}")"
- )
|