--- /dev/null
+# Copyright (C) 2000 - 2022 Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# SPDX-License-Identifier: curl
+
+name: Linux
+
+on:
+ # Trigger the workflow on push or pull requests, but only for the
+ # master branch
+ push:
+ branches:
+ - master
+ - '*/ci'
+ pull_request:
+ branches:
+ - master
+
+jobs:
+ autotools:
+ name: ${{ matrix.build.name }}
+ runs-on: 'ubuntu-latest'
+ timeout-minutes: 60
+ strategy:
+ fail-fast: false
+ matrix:
+ build:
+ - name: libressl
+ install: libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev
+ configure: LDFLAGS="-Wl,-rpath,$HOME/libressl/lib" --with-openssl=$HOME/libressl --enable-debug
+ - name: libressl-clang
+ install: libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev clang
+ configure: CC=clang LDFLAGS="-Wl,-rpath,$HOME/libressl/lib" --with-openssl=$HOME/libressl --enable-debug
+
+ steps:
+ - run: |
+ sudo apt-get update
+ sudo apt-get install libtool autoconf automake pkg-config stunnel4 ${{ matrix.build.install }}
+ sudo python3 -m pip install impacket
+ name: 'install prereqs and impacket'
+
+ - run: |
+ git clone --depth=1 -b v3.5.3 https://github.com/libressl-portable/portable.git libressl-git
+ cd libressl-git
+ ./autogen.sh
+ ./configure --prefix=$HOME/libressl
+ make
+ make install
+ name: 'build and install libressl'
+
+ - uses: actions/checkout@v3
+
+ - run: autoreconf -fi
+ name: 'autoreconf'
+
+ - run: ./configure --enable-warnings --enable-werror ${{ matrix.build.configure }}
+ name: 'configure'
+
+ - run: make V=1
+ name: 'make'
+
+ - run: make V=1 examples
+ name: 'make examples'
+
+ - run: make V=1 test-ci
+ name: 'test'
+ env:
+ TFLAGS: "${{ matrix.build.tflags }}"
export LIBS=-lpthread
fi
-if [ "$TRAVIS_OS_NAME" = linux -a "$LIBRESSL" ]; then
- cd $HOME
- git clone --depth=1 -b v3.1.4 https://github.com/libressl-portable/portable.git libressl-git
- cd libressl-git
- ./autogen.sh
- ./configure --prefix=$HOME/libressl
- make
- make install
-fi
-
if [ "$TRAVIS_OS_NAME" = linux -a "$QUICHE" ]; then
cd $HOME
git clone --depth=1 --recursive https://github.com/cloudflare/quiche.git
--with-quiche={{ ansible_user_dir }}/quiche/target/release
LD_LIBRARY_PATH: "{{ ansible_user_dir }}/quiche/target/release:/usr/local/lib"
-- job:
- name: curl-novalgrind-libressl
- parent: curl-base
- vars:
- curl_env:
- CC: gcc-8
- CXX: g++-8
- T: novalgrind
- LIBRESSL: "yes"
- C: >-
- --with-openssl={{ ansible_user_dir }}/libressl
- LD_LIBRARY_PATH: "{{ ansible_user_dir }}/libressl/lib:/usr/local/lib"
-
- job:
name: curl-novalgrind-ngtcp2-with-openssl
parent: curl-base
- curl-normal-with-openssl-gssapi-libssh2-checksrc
- curl-novalgrind-boringssl-with-openssl
- curl-novalgrind-boringssl-with-openssl-quiche
- - curl-novalgrind-libressl
- curl-novalgrind-ngtcp2-with-openssl
- curl-novalgrind-ngtcp2-gnutls
- curl-debug-clang-disable-alt-svc-with-openssl