]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
CI: Add Alpine (musl)
authorSam James <sam@gentoo.org>
Wed, 2 Nov 2022 01:49:37 +0000 (01:49 +0000)
committerTomas Mraz <tomas@openssl.org>
Wed, 9 Nov 2022 07:15:08 +0000 (08:15 +0100)
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)

.github/workflows/os-zoo.yml

index bfb2aa6cd301f230f0239b06973a71c5ade77aa9..47c933c226719dd5c76abb6e693b9fd60705c345 100644 (file)
@@ -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