msh3.yml 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. # Copyright (C) 2000 - 2022 Daniel Stenberg, <daniel@haxx.se>, et al.
  2. #
  3. # SPDX-License-Identifier: curl
  4. name: Linux
  5. on:
  6. # Trigger the workflow on push or pull requests, but only for the
  7. # master branch
  8. push:
  9. branches:
  10. - master
  11. - '*/ci'
  12. pull_request:
  13. branches:
  14. - master
  15. jobs:
  16. autotools:
  17. name: ${{ matrix.build.name }}
  18. runs-on: 'ubuntu-latest'
  19. timeout-minutes: 60
  20. strategy:
  21. fail-fast: false
  22. matrix:
  23. build:
  24. - name: msh3
  25. install: libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev
  26. configure: LDFLAGS="-Wl,-rpath,$HOME/msh3/lib -Wl,-rpath,$HOME/quictls/lib" --with-msh3=$HOME/msh3 --enable-debug --enable-werror --with-openssl=$HOME/quictls
  27. steps:
  28. - run: |
  29. sudo apt-get update
  30. sudo apt-get install libtool autoconf automake pkg-config stunnel4 ${{ matrix.build.install }}
  31. sudo python3 -m pip install impacket
  32. name: 'install prereqs and impacket'
  33. - run: |
  34. git clone --depth 1 -b OpenSSL_1_1_1j+quic https://github.com/quictls/openssl ossl
  35. cd ossl
  36. ./config enable-tls1_3 --prefix=$HOME/quictls
  37. make
  38. make install_sw
  39. name: 'install quictls'
  40. - run: |
  41. git clone --depth 1 --recursive https://github.com/nibanks/msh3
  42. cd msh3 && mkdir build && cd build
  43. cmake -G 'Unix Makefiles' -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=$HOME/msh3 ..
  44. cmake --build .
  45. cmake --install .
  46. name: 'install msh3'
  47. - uses: actions/checkout@v3
  48. - run: autoreconf -fi
  49. name: 'autoreconf'
  50. - run: ./configure --enable-warnings --enable-werror ${{ matrix.build.configure }}
  51. name: 'configure'
  52. - run: make V=1
  53. name: 'make'
  54. - run: make V=1 examples
  55. name: 'make examples'
  56. - run: make V=1 test-ci
  57. name: 'test'
  58. env:
  59. TFLAGS: "${{ matrix.build.tflags }}"