Handle multi-arch builds in Xcode lipo phase (#17212)

Correctly split ARCHS into a Bash array in xcode_backend.sh.

Previously, when ARCHS contained multiple values (e.g., ARCHS="armv7 arm64"),
we treated that as a single architecture, and lipo invocation would
fail.
This commit is contained in:
Chris Bracken 2018-05-02 18:50:35 -07:00 committed by GitHub
parent 27a2a27cbf
commit 7f0876700a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -184,7 +184,8 @@ GetFrameworkExecutablePath() {
LipoExecutable() {
local executable="$1"
shift
local archs=("$@")
# Split $@ into an array.
read -r -a archs <<< "$@"
# Extract architecture-specific framework executables.
local all_executables=()
@ -225,11 +226,10 @@ LipoExecutable() {
ThinFramework() {
local framework_dir="$1"
shift
local archs=("$@")
local plist_path="${framework_dir}/Info.plist"
local executable="$(GetFrameworkExecutablePath "${framework_dir}")"
LipoExecutable "${executable}" "${archs[@]}"
LipoExecutable "${executable}" "$@"
}
ThinAppFrameworks() {