blob: 91ebefd7613eaee0239f217f48cdcf46970b32ce [file] [log] [blame]
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -04001#!/usr/bin/env bash
Davide Pesavento27dd70c2022-08-19 16:24:28 -04002set -exo pipefail
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -04003
Davide Pesaventoec61b742020-04-18 01:00:12 -04004pushd "$CACHE_DIR" >/dev/null
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -04005
6INSTALLED_VERSION=
Davide Pesavento27dd70c2022-08-19 16:24:28 -04007if [[ $ID == macos ]]; then
8 BOOST=$(brew list --formula --versions boost)
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -04009 OLD_BOOST=$(cat boost.txt || :)
10 if [[ $OLD_BOOST != $BOOST ]]; then
11 echo "$BOOST" > boost.txt
12 INSTALLED_VERSION=NONE
13 fi
14fi
15
16if [[ -z $INSTALLED_VERSION ]]; then
17 INSTALLED_VERSION=$(git -C ndn-cxx rev-parse HEAD 2>/dev/null || echo NONE)
18fi
19
Davide Pesaventoec61b742020-04-18 01:00:12 -040020sudo rm -rf ndn-cxx-latest
21git clone --depth 1 https://github.com/named-data/ndn-cxx.git ndn-cxx-latest
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -040022LATEST_VERSION=$(git -C ndn-cxx-latest rev-parse HEAD 2>/dev/null || echo UNKNOWN)
23
24if [[ $INSTALLED_VERSION != $LATEST_VERSION ]]; then
Davide Pesaventoec61b742020-04-18 01:00:12 -040025 sudo rm -rf ndn-cxx
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -040026 mv ndn-cxx-latest ndn-cxx
27else
Davide Pesaventoec61b742020-04-18 01:00:12 -040028 sudo rm -rf ndn-cxx-latest
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -040029fi
30
31sudo rm -f /usr/local/bin/ndnsec*
32sudo rm -fr /usr/local/include/ndn-cxx
Davide Pesaventoec61b742020-04-18 01:00:12 -040033sudo rm -f /usr/local/lib{,64}/libndn-cxx*
34sudo rm -f /usr/local/lib{,64}/pkgconfig/libndn-cxx.pc
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -040035
36pushd ndn-cxx >/dev/null
37
Davide Pesavento27dd70c2022-08-19 16:24:28 -040038./waf --color=yes configure --without-osx-keychain
39./waf --color=yes build
40sudo ./waf --color=yes install
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -040041
42popd >/dev/null
43popd >/dev/null
44
Davide Pesavento27dd70c2022-08-19 16:24:28 -040045if [[ $ID_LIKE == *fedora* ]]; then
Davide Pesaventoec61b742020-04-18 01:00:12 -040046 sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
47fi
Davide Pesavento27dd70c2022-08-19 16:24:28 -040048if [[ $ID_LIKE == *linux* ]]; then
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -040049 sudo ldconfig
Alexander Afanasyev6e64ac92018-06-14 17:25:38 -040050fi