openssl3.yml 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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: openssl3
  25. install: libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev
  26. configure: LDFLAGS="-Wl,-rpath,$HOME/openssl3/lib64" --with-openssl=$HOME/openssl3 --enable-debug
  27. - name: openssl3-clang
  28. install: libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev clang
  29. configure: CC=clang LDFLAGS="-Wl,-rpath,$HOME/openssl3/lib64" --with-openssl=$HOME/openssl3 --enable-debug
  30. steps:
  31. - run: |
  32. sudo apt-get update
  33. sudo apt-get install libtool autoconf automake pkg-config stunnel4 ${{ matrix.build.install }}
  34. sudo python3 -m pip install impacket
  35. name: 'install prereqs and impacket'
  36. - run: |
  37. git clone --depth=1 https://github.com/openssl/openssl
  38. cd openssl
  39. ./config enable-tls1_3 --prefix=$HOME/openssl3
  40. make && make install_sw
  41. name: 'install openssl3'
  42. - uses: actions/checkout@v3
  43. - run: autoreconf -fi
  44. name: 'autoreconf'
  45. - run: ./configure --enable-warnings --enable-werror ${{ matrix.build.configure }} --enable-websockets
  46. name: 'configure'
  47. - run: make V=1
  48. name: 'make'
  49. - run: make V=1 examples
  50. name: 'make examples'
  51. - run: make V=1 test-ci
  52. name: 'test'
  53. env:
  54. TFLAGS: "${{ matrix.build.tflags }}"