Add keytar build scripts

This commit is contained in:
Samuel Elliott 2018-11-25 02:01:12 +00:00
parent c04ffdfc24
commit a371fabc70
No known key found for this signature in database
GPG Key ID: 8420C7CDE43DC4D6
3 changed files with 69 additions and 0 deletions

View File

@ -0,0 +1,14 @@
#!/bin/sh
PLATFORM="darwin"
ARCH="x64"
NODE_API_VERSION="53"
ELECTRON_VERSION="1.6.15"
scripts/build-keytar.sh $PLATFORM $ARCH $NODE_API_VERSION $ELECTRON_VERSION
NODE_API_VERSION="64"
ELECTRON_VERSION="4.0.0-beta.7"
scripts/build-keytar.sh $PLATFORM $ARCH $NODE_API_VERSION $ELECTRON_VERSION

14
scripts/build-keytar-linux.sh Executable file
View File

@ -0,0 +1,14 @@
#!/bin/sh
PLATFORM="linux"
ARCH="x64"
NODE_API_VERSION="53"
ELECTRON_VERSION="1.6.15"
scripts/build-keytar.sh $PLATFORM $ARCH $NODE_API_VERSION $ELECTRON_VERSION
NODE_API_VERSION="64"
ELECTRON_VERSION="4.0.0-beta.7"
scripts/build-keytar.sh $PLATFORM $ARCH $NODE_API_VERSION $ELECTRON_VERSION

41
scripts/build-keytar.sh Executable file
View File

@ -0,0 +1,41 @@
#!/bin/sh
PLATFORM="$1"
ARCH="$2"
NODE_API_VERSION="$3"
ELECTRON_VERSION="$4"
ELECTRON_URL="https://atom.io/download/electron"
DIRECTORY="release-tmp/keytar.node/keytar-4.3.0"
FILENAME="$PLATFORM-$ARCH-$NODE_API_VERSION.node"
if [ `node -p 'process.platform'` != "$PLATFORM" ]; then
echo "You must be running on $PLATFORM to build keytar for it."
exit 1
fi
cd node_modules/keytar
mv build/Release release-tmp
if [ -f release-tmp/keytar.node ]; then
rm release-tmp/keytar.node
fi
if [ -f $DIRECTORY/$FILENAME ]; then
echo "A binding already exists at $DIRECTORY/$FILENAME - deleting it"
rm $DIRECTORY/$FILENAME
fi
# Build the keytar binding
# This will be placed at build/Release/keytar.node
echo "Building keytar for $PLATFORM-$ARCH with Node.js API version $NODE_API_VERSION for Electron $ELECTRON_VERSION"
../.bin/node-gyp rebuild --target=$ELECTRON_VERSION --arch $ARCH --dist-url=$ELECTRON_URL
# Move it to the right place
echo "Moving keytar.node to $DIRECTORY"
mkdir -p $DIRECTORY
mv build/Release/keytar.node $DIRECTORY/$FILENAME
rm -rf build/Release
mv release-tmp build/Release