a0546dbc86
Also in this commit: * Sync CI scripts with other projects * Modernize docs/conf.py * Cleanup README.md * Use the official markdown version of the GPLv3 Refs: #5095 Change-Id: Ie607fcde1f6e41fa5efbbb41b21cb08583017442
60 lines
1.6 KiB
Bash
Executable File
60 lines
1.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -ex
|
|
|
|
pushd "$CACHE_DIR" >/dev/null
|
|
|
|
INSTALLED_VERSION=
|
|
if has OSX $NODE_LABELS; then
|
|
BOOST=$(brew ls --versions boost)
|
|
OLD_BOOST=$(cat boost.txt || :)
|
|
if [[ $OLD_BOOST != $BOOST ]]; then
|
|
echo "$BOOST" > boost.txt
|
|
INSTALLED_VERSION=NONE
|
|
fi
|
|
fi
|
|
|
|
if [[ -z $INSTALLED_VERSION ]]; then
|
|
INSTALLED_VERSION=$(git -C ndn-cxx rev-parse HEAD 2>/dev/null || echo NONE)
|
|
fi
|
|
|
|
sudo rm -rf ndn-cxx-latest
|
|
git clone --depth 1 https://github.com/named-data/ndn-cxx.git ndn-cxx-latest
|
|
LATEST_VERSION=$(git -C ndn-cxx-latest rev-parse HEAD 2>/dev/null || echo UNKNOWN)
|
|
|
|
if [[ $INSTALLED_VERSION != $LATEST_VERSION ]]; then
|
|
sudo rm -rf ndn-cxx
|
|
mv ndn-cxx-latest ndn-cxx
|
|
else
|
|
sudo rm -rf ndn-cxx-latest
|
|
fi
|
|
|
|
sudo rm -f /usr/local/bin/ndnsec*
|
|
sudo rm -fr /usr/local/include/ndn-cxx
|
|
sudo rm -f /usr/local/lib{,64}/libndn-cxx*
|
|
sudo rm -f /usr/local/lib{,64}/pkgconfig/libndn-cxx.pc
|
|
|
|
pushd ndn-cxx >/dev/null
|
|
|
|
if has Linux $NODE_LABELS && [[ $CXX != clang* && -z $DISABLE_ASAN ]]; then
|
|
# https://stackoverflow.com/a/47022141
|
|
ASAN="--with-sanitizer=address"
|
|
fi
|
|
if has CentOS-8 $NODE_LABELS; then
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1721553
|
|
PCH="--without-pch"
|
|
fi
|
|
|
|
./waf --color=yes configure --disable-static --enable-shared --without-osx-keychain $ASAN $PCH
|
|
./waf --color=yes build -j$WAF_JOBS
|
|
sudo_preserve_env PATH -- ./waf --color=yes install
|
|
|
|
popd >/dev/null
|
|
popd >/dev/null
|
|
|
|
if has CentOS-8 $NODE_LABELS; then
|
|
sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
|
|
fi
|
|
if has Linux $NODE_LABELS; then
|
|
sudo ldconfig
|
|
fi
|