linux-hyper.yml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  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: 90
  20. strategy:
  21. fail-fast: false
  22. matrix:
  23. build:
  24. - name: hyper
  25. install:
  26. configure: LDFLAGS="-Wl,-rpath,$HOME/hyper/target/debug" --with-openssl --with-hyper=$HOME/hyper --enable-debug
  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. cd $HOME
  35. git clone --depth=1 https://github.com/hyperium/hyper.git
  36. curl https://sh.rustup.rs -sSf | sh -s -- -y
  37. source $HOME/.cargo/env
  38. rustup toolchain install nightly
  39. name: 'install rust'
  40. - run: |
  41. cd $HOME/hyper
  42. RUSTFLAGS="--cfg hyper_unstable_ffi" cargo +nightly rustc --features client,http1,http2,ffi -Z unstable-options --crate-type cdylib
  43. name: 'install hyper'
  44. - uses: actions/checkout@v3
  45. - run: autoreconf -fi
  46. name: 'autoreconf'
  47. - run: ./configure --enable-warnings --enable-werror ${{ matrix.build.configure }}
  48. name: 'configure'
  49. - run: make V=1
  50. name: 'make'
  51. - run: make V=1 examples
  52. name: 'make examples'
  53. - run: make V=1 test-ci
  54. name: 'test'
  55. env:
  56. LD_LIBRARY_PATH: $HOME/hyper/target/debug:/usr/local/lib
  57. TFLAGS: "${{ matrix.build.tflags }}"