add syncLevel to send announce/listen early #787
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: C/C++ CI | |
on: [push, pull_request] | |
jobs: | |
build-ubuntu: | |
name: Ubuntu/GCC Autotools build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Dependencies | |
run: | | |
sudo apt install libncurses5-dev libreadline-dev nettle-dev libasio-dev \ | |
libgnutls28-dev libuv1-dev cython3 python3-dev python3-setuptools libcppunit-dev libjsoncpp-dev \ | |
autotools-dev autoconf libfmt-dev libhttp-parser-dev libmsgpack-dev libargon2-0-dev | |
- name: Configure | |
run: | | |
./autogen.sh | |
./configure | |
- name: Build | |
run: make | |
build-ubuntu-meson: | |
name: Ubuntu/GCC Meson build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Dependencies | |
run: | | |
sudo apt install meson ninja-build libncurses5-dev libreadline-dev nettle-dev libasio-dev \ | |
libgnutls28-dev libuv1-dev cython3 python3-dev python3-setuptools libcppunit-dev libjsoncpp-dev \ | |
libfmt-dev libhttp-parser-dev libmsgpack-dev libargon2-0-dev | |
- name: Configure | |
run: meson setup build . | |
- name: Build | |
run: cd build && ninja | |
build-ubuntu-minimal: | |
name: Ubuntu/GCC minimal build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Dependencies | |
run: | | |
sudo apt install libncurses5-dev libreadline-dev nettle-dev libfmt-dev \ | |
libgnutls28-dev libcppunit-dev libmsgpack-dev libargon2-0-dev | |
- name: Configure | |
run: | | |
mkdir build && cd build | |
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Debug \ | |
-DOPENDHT_C=Off -DOPENDHT_TESTS=On -DOPENDHT_PEER_DISCOVERY=Off -DOPENDHT_PYTHON=Off \ | |
-DOPENDHT_TOOLS=On -DOPENDHT_PROXY_SERVER=Off -DOPENDHT_PROXY_CLIENT=Off | |
- name: Build | |
run: cd build && make | |
- name: Unit tests | |
run: cd build && ./opendht_unit_tests | |
build-macos: | |
name: macOS/Clang build | |
runs-on: macos-11 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Dependencies | |
run: | | |
brew install msgpack-cxx asio gnutls nettle readline fmt jsoncpp argon2 openssl http-parser cppunit | |
- name: restinio | |
run: | | |
mkdir restinio && cd restinio | |
wget https://github.com/aberaud/restinio/archive/bbaa034dbcc7555ce67df0f8a1475591a7441733.tar.gz | |
ls -l && tar -xzf bbaa034dbcc7555ce67df0f8a1475591a7441733.tar.gz | |
cd restinio-bbaa034dbcc7555ce67df0f8a1475591a7441733/dev | |
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DRESTINIO_TEST=OFF -DRESTINIO_SAMPLE=OFF \ | |
-DRESTINIO_INSTALL_SAMPLES=OFF -DRESTINIO_BENCH=OFF -DRESTINIO_INSTALL_BENCHES=OFF \ | |
-DRESTINIO_FIND_DEPS=ON -DRESTINIO_ALLOW_SOBJECTIZER=Off -DRESTINIO_USE_BOOST_ASIO=none . | |
make -j8 && sudo make install | |
cd ../../.. && rm -rf restinio | |
- name: Configure | |
run: | | |
mkdir build && cd build | |
export PATH="/opt/homebrew/opt/openssl@3/bin:$PATH" | |
export LDFLAGS="-L/usr/local/opt/openssl@3/lib" | |
export CPPFLAGS="-I/usr/local/opt/openssl@3/include" | |
export PKG_CONFIG_PATH="/usr/local/opt/openssl@3/lib/pkgconfig" | |
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Debug \ | |
-DOPENDHT_C=On -DOPENDHT_TESTS=On -DOPENDHT_PEER_DISCOVERY=On -DOPENDHT_PYTHON=Off \ | |
-DOPENDHT_TOOLS=On -DOPENDHT_PROXY_SERVER=On -DOPENDHT_PROXY_CLIENT=On -DOPENDHT_PUSH_NOTIFICATIONS=On | |
- name: Build | |
run: cd build && make | |