Build with cmake .. -DCMAKE_BUILD_TYPE=Release -DENABLE_NODE_BINDINGS=On -DENABLE_MASON=On
52 lines
1.5 KiB
Bash
Executable File
52 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -eu
|
|
set -o pipefail
|
|
|
|
# should be set for debug builds
|
|
export NPM_FLAGS=${NPM_FLAGS:-}
|
|
|
|
echo "node version is:"
|
|
which node
|
|
node -v
|
|
|
|
echo "dumping binary meta..."
|
|
./node_modules/.bin/node-pre-gyp reveal ${NPM_FLAGS}
|
|
|
|
# enforce that binary has proper ORIGIN flags so that
|
|
# it can portably find libtbb.so in the same directory
|
|
if [[ $(uname -s) == 'Linux' ]]; then
|
|
readelf -d ./lib/binding/node-osrm.node > readelf-output.txt
|
|
if grep -q 'Flags: ORIGIN' readelf-output.txt; then
|
|
echo "Found ORIGIN flag in readelf output"
|
|
cat readelf-output.txt
|
|
else
|
|
echo "*** Error: Could not found ORIGIN flag in readelf output"
|
|
cat readelf-output.txt
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
echo "determining publishing status..."
|
|
|
|
if [[ $(./scripts/travis/is_pr_merge.sh) ]]; then
|
|
echo "Skipping publishing because this is a PR merge commit"
|
|
else
|
|
echo "This is a push commit, continuing to package..."
|
|
./node_modules/.bin/node-pre-gyp package ${NPM_FLAGS}
|
|
|
|
export COMMIT_MESSAGE=$(git log --format=%B --no-merges | head -n 1 | tr -d '\n')
|
|
echo "Commit message: ${COMMIT_MESSAGE}"
|
|
|
|
if [[ ${COMMIT_MESSAGE} =~ "[publish binary]" ]]; then
|
|
echo "Publishing"
|
|
./node_modules/.bin/node-pre-gyp publish ${NPM_FLAGS}
|
|
elif [[ ${COMMIT_MESSAGE} =~ "[republish binary]" ]]; then
|
|
echo "*** Error: Republishing is disallowed for this repository"
|
|
exit 1
|
|
#./node_modules/.bin/node-pre-gyp unpublish publish ${NPM_FLAGS}
|
|
else
|
|
echo "Skipping publishing"
|
|
fi;
|
|
fi
|