summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 12b86785677470be4920b22c4d4f251d97e7d338 (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
before_script:
 - apt-get update -qq

build-minimal:
 script:
 - apt-get install -y -qq cmake libsdl2-dev tidy
 - rm -rf /usr/include/zlib.h /usr/include/png.h /usr/include/readline*
 - CFLAGS="-D_FORTIFY_SOURCE=3"
   ./configure --disable-dsp --enable-debug --disable-tracing --enable-werror
 - make -j$(nproc)
 - ctest -j$(nproc)

build-32bit:
 script:
 - dpkg --add-architecture i386
 - apt-get update -qq
 - apt-get install -y cmake clang file gcc-multilib
                      libgcc1:i386 libportmidi-dev:i386 libpng-dev:i386
                      libglib2.0-dev:i386 zlib1g-dev:i386
                      libsdl2-dev:i386 libudev-dev:i386 libreadline-dev:i386
 - CC="clang" CFLAGS="-m32 -O3 -Werror -D_FORTIFY_SOURCE=3"
   ./configure --enable-debug
 - make -j$(nproc)
 - file src/hatari | grep 32.bit
 - ctest -j$(nproc)

build-mingw:
 image: fedora:latest
 before_script:
 - dnf update -y
 - dnf install -y cmake make gcc mingw32-gcc mingw32-SDL2 mingw32-zlib
 script:
 - cmake -DCMAKE_TOOLCHAIN_FILE=cmake/Toolchain-mingw32-win64_32.cmake
         -DENABLE_WERROR:BOOL=1 .
 - make -j$(nproc)

pages:
  stage: deploy
  script:
    - mkdir -p public/doc
    - cp doc/*.html doc/*.css doc/*.js doc/*.txt public/doc/
    - cp -r doc/images public/doc/
    - apt-get install -y -qq doxygen
    - cd doc/doxygen/ ; doxygen ; cd ../..
    - cp -r doc/doxygen/html public/doxygen/
  artifacts:
    paths:
      - public
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH