summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-11-02 01:49:37 +0000
committerTomas Mraz <tomas@openssl.org>2022-11-09 08:15:08 +0100
commite8cec34c39cd2f30b98d1d98e9a297066c918ab3 (patch)
treec6fd67d7d2dc114ae09047418c6900e17ebdfc8e
parentce74e3fb50e1756b14e394acf9dff7362099bb66 (diff)
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 <sam@gentoo.org> Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19577)
-rw-r--r--.github/workflows/os-zoo.yml37
1 files changed, 37 insertions, 0 deletions
diff --git a/.github/workflows/os-zoo.yml b/.github/workflows/os-zoo.yml
index bfb2aa6cd3..47c933c226 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