OSDN Git Service

intel: make gen9 use generic gen macro
[android-x86/external-libdrm.git] / .gitlab-ci.yml
1 latest-meson:
2   stage: build
3   image: base/archlinux:latest
4   before_script:
5     - pacman -Syu --noconfirm --needed
6         base-devel
7         meson
8         libpciaccess
9         libxslt docbook-xsl
10         valgrind
11         libatomic_ops
12         cairo cunit
13   script:
14     - meson _build
15         -D amdgpu=true
16         -D cairo-tests=true
17         -D etnaviv=true
18         -D exynos=true
19         -D freedreno=true
20         -D freedreno-kgsl=true
21         -D intel=true
22         -D libkms=true
23         -D man-pages=true
24         -D nouveau=true
25         -D omap=true
26         -D radeon=true
27         -D tegra=true
28         -D udev=true
29         -D valgrind=true
30         -D vc4=true
31         -D vmwgfx=true
32     - ninja -C _build
33     - ninja -C _build test
34
35 latest-autotools:
36   stage: build
37   image: base/archlinux:latest
38   before_script:
39     - pacman -Syu --noconfirm --needed
40         base-devel
41         libpciaccess
42         libxslt docbook-xsl
43         valgrind
44         libatomic_ops
45         cairo cunit
46         xorg-util-macros
47         git # autogen.sh depends on git
48   script:
49     - mkdir _build
50     - cd _build
51     - ../autogen.sh
52         --enable-udev
53         --enable-libkms
54         --enable-intel
55         --enable-radeon
56         --enable-admgpu
57         --enable-nouveau
58         --enable-vmwfgx
59         --enable-omap-experimental-api
60         --enable-exynos-experimental-api
61         --enable-freedreno
62         --enable-freedreno-kgsl
63         --enable-tegra-experimental-api
64         --enable-vc4
65         --enable-etnaviv-experimental-api
66     - make
67     - make check
68
69 oldest-meson:
70   stage: build
71   image: debian:stable
72   before_script:
73     - printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n"
74         'path-exclude=/usr/share/doc/*'
75         'path-exclude=/usr/share/man/*'
76     - printf > /usr/sbin/policy-rc.d "%s\n"
77         '#!/bin/sh'
78         'exit 101'
79     - chmod +x /usr/sbin/policy-rc.d
80     - apt-get update
81     - apt-get -y --no-install-recommends install
82         build-essential
83         pkg-config
84         xsltproc
85         libxslt1-dev docbook-xsl
86         valgrind
87         libatomic-ops-dev
88         libcairo2-dev libcunit1-dev
89         ninja-build
90         python3 python3-pip
91         wget
92     # We need `--no-check-certificate` here because Debian's CA list is
93     # too old to know about LetsEncrypt's CA, so it refuses to connect
94     # to FreeDesktop.org
95     - LIBPCIACCESS_VERSION=libpciaccess-0.10 &&
96       wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 &&
97       tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 &&
98       (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install)
99     - pip3 install wheel setuptools
100     - pip3 install meson==0.43
101   script:
102     - export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
103     - export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
104     - meson _build
105         -D amdgpu=true
106         -D cairo-tests=true
107         -D etnaviv=true
108         -D exynos=true
109         -D freedreno=true
110         -D freedreno-kgsl=true
111         -D intel=true
112         -D libkms=true
113         -D man-pages=true
114         -D nouveau=true
115         -D omap=true
116         -D radeon=true
117         -D tegra=true
118         -D udev=true
119         -D valgrind=true
120         -D vc4=true
121         -D vmwgfx=true
122     - ninja -C _build
123     - ninja -C _build test
124
125 oldest-autotools:
126   stage: build
127   image: debian:stable
128   before_script:
129     - printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n"
130         'path-exclude=/usr/share/doc/*'
131         'path-exclude=/usr/share/man/*'
132     - printf > /usr/sbin/policy-rc.d "%s\n"
133         '#!/bin/sh'
134         'exit 101'
135     - chmod +x /usr/sbin/policy-rc.d
136     - apt-get update
137     - apt-get -y --no-install-recommends install
138         build-essential
139         automake
140         autoconf
141         libtool
142         pkg-config
143         xsltproc
144         libxslt1-dev docbook-xsl
145         valgrind
146         libatomic-ops-dev
147         libcairo2-dev libcunit1-dev
148         wget
149         xutils-dev
150         git # autogen.sh depends on git
151     # We need `--no-check-certificate` here because Debian's CA list is
152     # too old to know about LetsEncrypt's CA, so it refuses to connect
153     # to FreeDesktop.org
154     - LIBPCIACCESS_VERSION=libpciaccess-0.10 &&
155       wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 &&
156       tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 &&
157       (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install)
158   script:
159     - export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
160     - export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
161     - mkdir _build
162     - cd _build
163     - ../autogen.sh
164         --enable-udev
165         --enable-libkms
166         --enable-intel
167         --enable-radeon
168         --enable-admgpu
169         --enable-nouveau
170         --enable-vmwfgx
171         --enable-omap-experimental-api
172         --enable-exynos-experimental-api
173         --enable-freedreno
174         --enable-freedreno-kgsl
175         --enable-tegra-experimental-api
176         --enable-vc4
177         --enable-etnaviv-experimental-api
178     - make
179     - make check