cicd: Make it build.
Use versioned images (because package names are release dependent).
Don't fail on abidiff v2.0.
Replace failing "x86" cross build with new "armcross".
Use faster git submodule approach.
Signed-off-by: Simon Josefsson <simon@josefsson.org>
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 06865eb..81611de 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,7 +1,7 @@
variables:
+ GIT_SUBMODULE_STRATEGY: normal
BUILD_IMAGES_PROJECT: gnutls/build-images
FEDORA_BUILD: buildenv-fedora33
- DEBIAN_X86_CROSS_BUILD: buildenv-debian-x86-cross
GET_SOURCES_ATTEMPTS: "3"
# See http://doc.gitlab.com/ce/ci/yaml/ for documentation.
@@ -14,8 +14,7 @@
- ./configure --disable-doc && make -j$(nproc)
- make syntax-check
- make -j$(nproc) check
- - make abi-check
- - make distcheck
+ - make dist
except:
- tags
tags:
@@ -33,8 +32,8 @@
paths:
- libtasn1-*.tar.gz
-Debian-oldstable-bootstrap:
- image: debian:oldstable-slim
+Debian10-bootstrap:
+ image: debian:10-slim
stage: build
before_script:
- apt-get update -qq
@@ -44,6 +43,7 @@
- ./configure --enable-gcc-warnings
- make -j$(nproc)
- make -j$(nproc) check
+ - make abi-check
- make distcheck
artifacts:
expire_in: 2 weeks
@@ -51,12 +51,12 @@
paths:
- libtasn1-*.tar.gz
-Debian-stable-bootstrap:
- image: debian:stable-slim
+Debian11-bootstrap:
+ image: debian:11-slim
stage: build
before_script:
- apt-get update -qq
- - env DEBIAN_FRONTEND=noninteractive apt-get install -y -qq make git autoconf automake libtool bison texinfo texlive texlive-generic-recommended texlive-extra-utils help2man gtk-doc-tools valgrind abigail-tools
+ - env DEBIAN_FRONTEND=noninteractive apt-get install -y -qq make git autoconf automake libtool bison texinfo texlive texlive-plain-generic texlive-extra-utils help2man gtk-doc-tools valgrind abigail-tools
script:
- ./bootstrap
- ./configure --enable-gcc-warnings
@@ -81,8 +81,7 @@
- ./configure --enable-gcc-warnings
- make -j$(nproc)
- make -j$(nproc) check
- - make abi-check
- - make distcheck
+ - make dist
artifacts:
expire_in: 2 weeks
when: on_success
@@ -107,32 +106,6 @@
- ./*.log
- ./tests/*.log
-x86:
- image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$DEBIAN_X86_CROSS_BUILD
- script:
- - build=$(dpkg-architecture -qDEB_HOST_GNU_TYPE)
- - host=i686-linux-gnu
- - export CC_FOR_BUILD="gcc"
- - export CC="$host-gcc"
- - ./bootstrap
- - mkdir -p build
- - cd build
- - dash ../configure --build=$build --host=$host --disable-doc
- - make -j$(nproc)
- - make check -j$(nproc)
- - cd ..
- tags:
- - shared
- - docker
- except:
- - tags
- artifacts:
- expire_in: 1 week
- when: on_failure
- paths:
- - build/*.log
- - build/tests/*.log
-
clang:
image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
script:
@@ -252,8 +225,29 @@
paths:
- scan-build-lib/
-Debian-oldstable-distcheck:
- image: debian:oldstable-slim
+armcross:
+ image: debian:11-slim
+ stage: test
+ needs: [Debian11-bootstrap]
+ before_script:
+ - apt-get update -qq
+ - env DEBIAN_FRONTEND=noninteractive apt-get install -y -q make gcc-arm-linux-gnueabi qemu-user qemu-user-binfmt file
+ - update-binfmts --enable qemu-arm
+ script:
+ - tar xfa libtasn1-*.tar.gz
+ - cd `ls -d libtasn1-* | grep -v tar.gz`
+ - mkdir b
+ - cd b
+ - ../configure --host=arm-linux-gnueabi --enable-gcc-warnings CFLAGS="-static --static" || (cat config.log; exit 1)
+ - make V=1
+ - arm-linux-gnueabi-readelf -h lib/.libs/libtasn1.a
+ - arm-linux-gnueabi-readelf -h src/asn1Parser
+ - file src/asn1Parser
+ - LANG=C.UTF-8 qemu-arm src/asn1Parser -c ../tests/pkix.asn
+ - make check
+
+Debian9-distcheck:
+ image: debian:9-slim
stage: test
needs: [x86-64]
before_script:
@@ -269,8 +263,8 @@
paths:
- libtasn1-*.tar.gz
-Debian-stable-distcheck:
- image: debian:stable-slim
+Debian11-distcheck:
+ image: debian:11-slim
stage: test
needs: [x86-64]
before_script: