47 lines
1.1 KiB
Bash
47 lines
1.1 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
MASON_NAME=node_asan
|
|
MASON_VERSION=4.4.4
|
|
MASON_LIB_FILE=bin/node
|
|
|
|
. ${MASON_DIR}/mason.sh
|
|
|
|
function mason_load_source {
|
|
mason_download \
|
|
https://nodejs.org/dist/v${MASON_VERSION}/node-v${MASON_VERSION}.tar.gz \
|
|
71c6b67274b5e042366e7fbba1ee92426ce6fe1a
|
|
|
|
mason_extract_tar_gz
|
|
|
|
export MASON_BUILD_PATH=${MASON_ROOT}/.build/node-v${MASON_VERSION}
|
|
}
|
|
|
|
function mason_compile {
|
|
export CXXFLAGS="${CXXFLAGS} -fsanitize=address"
|
|
export CFLAGS="${CFLAGS} -fsanitize=address"
|
|
export LDFLAGS="${LDFLAGS} -fsanitize=address"
|
|
if [[ $(uname -s) == 'Darwin' ]]; then
|
|
export CXXFLAGS="${CXXFLAGS} -std=c++11 -stdlib=libc++"
|
|
export LDFLAGS="${LDFLAGS} -std=c++11 -stdlib=libc++"
|
|
fi
|
|
|
|
./configure \
|
|
--prefix=${MASON_PREFIX} \
|
|
--debug
|
|
echo "making binary"
|
|
make binary -j${MASON_CONCURRENCY}
|
|
ls
|
|
echo "uncompressing binary"
|
|
tar -xf *.tar.gz
|
|
echo "making dir"
|
|
mkdir -p ${MASON_PREFIX}
|
|
echo "making copying"
|
|
cp -r node-v${MASON_VERSION}*/* ${MASON_PREFIX}/
|
|
}
|
|
|
|
function mason_clean {
|
|
make clean
|
|
}
|
|
|
|
mason_run "$@"
|