react-native/scripts/ios-install-third-party.sh
Gabriel Bull 95d5d112ac Fixed issue with install third party script in directory with spaces
Summary:
Fixes an issue with installing third party on iOS when the project's path contains a space, no matter where the space is in the path.

__Error__
```
/Users/AwesomeUser/Library/Developer/Xcode/DerivedData/AwesomeProject-xxx/Build/Intermediates.noindex/React.build/Debug-iphoneos/double-conversion.build/Script-190EE32F1E6A43DE00A8543A.sh: line 3: /Users/AwesomeUser/path contain space/scripts/ios-install-third-party.sh: No such file or directory
/Users/AwesomeUser/Library/Developer/Xcode/DerivedData/AwesomeProject-xxx/Build/Intermediates.noindex/React.build/Debug-iphoneos/double-conversion.build/Script-190EE32F1E6A43DE00A8543A.sh: line 3: exec: /Users/AwesomeUser/path contain space/scripts/ios-install-third-party.sh: cannot execute: No such file or directory
```
Closes https://github.com/facebook/react-native/pull/15377

Differential Revision: D5572671

Pulled By: shergin

fbshipit-source-id: 102727fc1b820e399e170c9c0cb73fd5d1e018d5
2017-08-06 20:22:21 -07:00

40 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e
cachedir="$HOME/.rncache"
mkdir -p "$cachedir"
function fetch_and_unpack () {
file=$1
url=$2
cmd=$3
if [ ! -f "$cachedir/$file" ]; then
(cd "$cachedir"; curl -J -L -O "$url")
fi
dir=$(basename "$file" .tar.gz)
if [ ! -d "third-party/$dir" ]; then
(cd third-party;
echo Unpacking "$cachedir/$file"...
if ! tar zxf "$cachedir/$file"; then
echo "Unpacking '$cachedir/$file' failed. Debug info:" 2>&1
ls -l "$cachedir/$file" 2>&1
shasum ~/.rncache/boost_1_63_0.tar.gz 2>&1
exit 1
fi
cd "$dir"
eval "${cmd:-true}")
fi
}
mkdir -p third-party
SCRIPTDIR=$(dirname "$0")
fetch_and_unpack glog-0.3.4.tar.gz https://github.com/google/glog/archive/v0.3.4.tar.gz "\"$SCRIPTDIR/ios-configure-glog.sh\""
fetch_and_unpack double-conversion-1.1.5.tar.gz https://github.com/google/double-conversion/archive/v1.1.5.tar.gz
fetch_and_unpack boost_1_63_0.tar.gz https://github.com/react-native-community/boost-for-react-native/releases/download/v1.63.0-0/boost_1_63_0.tar.gz
fetch_and_unpack folly-2016.09.26.00.tar.gz https://github.com/facebook/folly/archive/v2016.09.26.00.tar.gz