From e8cec34c39cd2f30b98d1d98e9a297066c918ab3 Mon Sep 17 00:00:00 2001 From: Sam James Date: Wed, 2 Nov 2022 01:49:37 +0000 Subject: [PATCH] CI: Add Alpine (musl) I'm not intending to add every single possible combination of distros to compiler-zoo, but I think this one is worthwhile. musl tends to be Different Enough (TM) to allow problems to be found, in particular (but not limited to) its malloc implementation ("mallocng"). It's also quite a common environment, especially in containers, so I think it's worth testing on. Signed-off-by: Sam James Reviewed-by: Paul Dale Reviewed-by: Hugo Landau Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/19577) --- .github/workflows/os-zoo.yml | 37 ++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/.github/workflows/os-zoo.yml b/.github/workflows/os-zoo.yml index bfb2aa6cd30..47c933c2267 100644 --- a/.github/workflows/os-zoo.yml +++ b/.github/workflows/os-zoo.yml @@ -15,6 +15,43 @@ permissions: contents: read jobs: + # This has to be a separate job, it seems, because we want to use a + # container for it. + unix-container: + strategy: + fail-fast: false + matrix: + image: ['alpine:edge', 'alpine:latest'] + cc: ['gcc', 'clang'] + runs-on: ubuntu-latest + container: + image: ${{ matrix.image }} + steps: + - name: install packages + run: | + apk --no-cache add build-base perl linux-headers ${{ matrix.cc }} + + - uses: actions/checkout@v3 + + - name: config + run: | + cc="${{ matrix.cc }}" + + extra_cflags="" + if [[ ${cc} == "clang" ]] ; then + # https://www.openwall.com/lists/musl/2022/02/16/14 + extra_cflags="-Wno-sign-compare" + fi + + CC=${{ matrix.cc }} ./config --banner=Configured no-shared \ + -Wall -Werror enable-fips --strict-warnings -DOPENSSL_USE_IPV6=0 ${extra_cflags} + + - name: config dump + run: ./configdata.pm --dump + - name: make + run: make -s -j4 + - name: make test + run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} unix: strategy: fail-fast: false -- 2.47.3