summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 4622086c21162faf09497e38016b5da122050656 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
Compile minimal library:
  script:
  - git submodule update --init && make autoreconf && ./configure --with-included-libtasn1
    --disable-doc --disable-dtls-srtp-support --disable-alpn-support --disable-rsa-export
    --disable-heartbeat-support --disable-srp-authentication --disable-psk-authentication
    --disable-anon-authentication --disable-dhe --disable-ecdhe --disable-openpgp-authentication
    --disable-ocsp --disable-session-tickets --disable-openssl-compatibility --disable-non-suiteb-curves
    --disable-nls --disable-crywrap --disable-libdane --without-p11-kit --without-tpm
    --without-zlib --disable-doc --disable-tests && make -j4
  tags:
  - nettle3
  except:
  - tags
Build and Check with asan:
  script:
  - git submodule update --init && make autoreconf && rm -f tests/suite/mini-eagain2.c &&CFLAGS="-fsanitize=address -g
    -O2" LDFLAGS="-static-libasan" ./configure --disable-doc --with-included-libtasn1 --disable-valgrind-tests --disable-non-suiteb-curves --disable-guile
    && make -j4 && make check -j4
  tags:
  - x86-64
  - nettle3
  except:
  - tags
Build and Check - separate build dir (x86):
  script:
  - git submodule update --init && make autoreconf && mkdir -p build && cd build &&
    ../configure --disable-non-suiteb-curves --with-included-libtasn1 --enable-seccomp-tests --disable-doc --disable-valgrind-tests &&
    make -j4 && make check -j4
  tags:
  - x86
  - nettle3
  except:
  - tags
Build and ABI-check (x86-64):
  script:
  - git submodule update --init && make autoreconf && mkdir -p build && cd build &&
    ../configure --disable-doc --disable-cxx --disable-guile --disable-non-suiteb-curves && make -j4 && make abi-check
  tags:
  - x86-64
  - nettle3
  - abi-checker
  except:
  - tags
Build and Check - clang (x86):
  script:
  - git submodule update --init && make autoreconf && 
    CC=clang ./configure --disable-non-suiteb-curves --with-included-libtasn1 --enable-seccomp-tests --disable-doc --disable-valgrind-tests &&
    make -j4 && make check -C tests -j4
  tags:
  - x86
  - nettle3
  except:
  - tags
Build and Check in FIPS140-2 mode:
  script:
  - git submodule update --init && make autoreconf && mkdir -p build && cd build &&
    ../configure --disable-non-suiteb-curves --enable-fips140-mode --with-included-libtasn1 --disable-doc --disable-valgrind-tests &&
    make -j4 && make check -j4
  tags:
  - nettle3
  except:
  - tags
Release build for windows DLLs:
  script:
  - make autoreconf && rm -f tests/suite/mini-eagain2.c && mingw32-configure --enable-local-libopts --without-p11-kit --disable-non-suiteb-curves --disable-doc --disable-valgrind-tests &&
    mingw32-make -j4 && make check -j4 
  tags:
  - nettle3
  - wine
  - mingw
  - linux
  only:
  - tags
  artifacts:
    paths:
      - src/*.exe
      - lib/.libs/*.dll
      - lib/.libs/*.a
      - lib/*.def
      - lib/includes/gnutls/*.h
      - lib/gnutls.pc
Build and Check for windows in separate build dir:
  script:
  - git submodule update --init && make autoreconf && rm -f tests/suite/mini-eagain2.c && mkdir -p build && cd build &&
    mingw32-configure --enable-local-libopts --without-p11-kit --disable-non-suiteb-curves --disable-doc --disable-valgrind-tests &&
    mingw32-make -j4 && mingw32-make -C tests check -j4
  tags:
  - nettle3
  - wine
  - mingw
  except:
  - tags
Build and Check with valgrind:
  script:
  - git submodule update --init && make autoreconf && rm -f tests/suite/mini-eagain2.c && ./configure
    --disable-non-suiteb-curves --with-included-libtasn1 --disable-doc && make -j4 && make check -j4
  tags:
  - x86-64
  - nettle3
  except:
  - tags