pulsar/script/update-node
Cheng Zhao 215cd64c9a Use the node binary compiled with V8 used by Chromium.
The official node is using a different V8 version with the one used by
cefode, which causes incompatibility with cefode on native modules, this
special node binary fixes it.

The source code of this node binary can be found at:
https://github.com/atom/cefode-node/tree/chromium-v8
2013-03-27 12:25:54 +08:00

33 lines
728 B
Bash
Executable File

#!/bin/bash
set -e
cd "$(dirname $0)/.."
NODE_VERSION=v0.10.1
[ -z $1 ] || NODE_VERSION=$1
# Test whether we need update.
if [ -f "node/node" ] && [[ `node/node --version` == $NODE_VERSION ]] ; then
exit 0
fi
case $OSTYPE in
darwin*) NODE_PLATFORM=darwin ;;
linux*) NODE_PLATFORM=linux ;;
*) echo "Unsupported platform $OSTYPE" && exit 1 ;;
esac
NODE_DIST_NAME="node-$NODE_VERSION-$NODE_PLATFORM-x86"
# Download node and untar
NODE_TARBALL_URL="https://gh-contractor-zcbenz.s3.amazonaws.com/node/dist/$NODE_DIST_NAME.tar.gz"
TARGET_DIR='node'
[ -d "$TARGET_DIR" ] || mkdir "$TARGET_DIR"
cd "$TARGET_DIR"
curl -fsSkL $NODE_TARBALL_URL | tar -zx || exit 1
cp "$NODE_DIST_NAME/bin/node" .
rm -rf "$NODE_DIST_NAME"