Message ID | 20180831141856.28780-1-eric.engestrom@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [libdrm] add gitlab-ci builds of libdrm | expand |
Hi Eric, On Fri, 31 Aug 2018 at 15:22, Eric Engestrom <eric.engestrom@intel.com> wrote: > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && Why are you using --no-check-certificate?! Cheers, Daniel
On Friday, 2018-08-31 16:03:44 +0100, Daniel Stone wrote: > Hi Eric, > > On Fri, 31 Aug 2018 at 15:22, Eric Engestrom <eric.engestrom@intel.com> wrote: > > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && > > Why are you using --no-check-certificate?! Right, forgot to add a comment for this, sorry. fd.o uses LetsEncrypt, which is not present in the ca-certificate on debian:stable. I had to choose between ignoring the certificate error or use a custom CA, which just didn't seem worth it. > > Cheers, > Daniel
On Fri, Aug 31, 2018 at 05:13:25PM +0100, Eric Engestrom wrote: > On Friday, 2018-08-31 16:03:44 +0100, Daniel Stone wrote: > > Hi Eric, > > > > On Fri, 31 Aug 2018 at 15:22, Eric Engestrom <eric.engestrom@intel.com> wrote: > > > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > > > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && > > > > Why are you using --no-check-certificate?! > > Right, forgot to add a comment for this, sorry. > > fd.o uses LetsEncrypt, which is not present in the ca-certificate on > debian:stable. I had to choose between ignoring the certificate error or > use a custom CA, which just didn't seem worth it. Slightly more modern distro then? On the kernel side we're going with fedora:latest, that also tends to have all the latest bells&whistles we need for compiling some of our things. -Daniel
On Monday, 2018-09-03 09:50:06 +0200, Daniel Vetter wrote: > On Fri, Aug 31, 2018 at 05:13:25PM +0100, Eric Engestrom wrote: > > On Friday, 2018-08-31 16:03:44 +0100, Daniel Stone wrote: > > > Hi Eric, > > > > > > On Fri, 31 Aug 2018 at 15:22, Eric Engestrom <eric.engestrom@intel.com> wrote: > > > > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > > > > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && > > > > > > Why are you using --no-check-certificate?! > > > > Right, forgot to add a comment for this, sorry. > > > > fd.o uses LetsEncrypt, which is not present in the ca-certificate on > > debian:stable. I had to choose between ignoring the certificate error or > > use a custom CA, which just didn't seem worth it. > > Slightly more modern distro then? On the kernel side we're going with > fedora:latest, that also tends to have all the latest bells&whistles we > need for compiling some of our things. I have two distros in this pipeline: arch to test the up-to-date stuff and debian to test the ancient stuff. Should I drop debian and just keep arch to only have the up-to-date test? FYI, I'm planning on adding freebsd too (later this week hopefully). > -Daniel > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
On Mon, Sep 03, 2018 at 09:07:10AM +0100, Eric Engestrom wrote: > On Monday, 2018-09-03 09:50:06 +0200, Daniel Vetter wrote: > > On Fri, Aug 31, 2018 at 05:13:25PM +0100, Eric Engestrom wrote: > > > On Friday, 2018-08-31 16:03:44 +0100, Daniel Stone wrote: > > > > Hi Eric, > > > > > > > > On Fri, 31 Aug 2018 at 15:22, Eric Engestrom <eric.engestrom@intel.com> wrote: > > > > > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > > > > > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && > > > > > > > > Why are you using --no-check-certificate?! > > > > > > Right, forgot to add a comment for this, sorry. > > > > > > fd.o uses LetsEncrypt, which is not present in the ca-certificate on > > > debian:stable. I had to choose between ignoring the certificate error or > > > use a custom CA, which just didn't seem worth it. > > > > Slightly more modern distro then? On the kernel side we're going with > > fedora:latest, that also tends to have all the latest bells&whistles we > > need for compiling some of our things. > > I have two distros in this pipeline: arch to test the up-to-date stuff > and debian to test the ancient stuff. > Should I drop debian and just keep arch to only have the up-to-date test? Ah, I missed that. Makes sense (if you add a comment to explain this). > FYI, I'm planning on adding freebsd too (later this week hopefully). I think cross-compiling to arm/arm64, and making sure x86 (the 32bit stuff) keeps working would be great too. If you go to the trouble of testing all these things :-) -Daniel
On Fri, Aug 31, 2018 at 03:18:56PM +0100, Eric Engestrom wrote: > It currently does 4 builds: 2 using Meson and 2 using Autotools, 2 using > the latest dependencies on ArchLinux and 2 using very old dependencies > on Debian (including manually building libpciaccess to have the oldest > version supported, to make sure it keeps being supported). > > All the build options are turned on for both Meson and Autotools. > > Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> > --- > See it in action on my fork: > https://gitlab.freedesktop.org/eric/libdrm/pipelines/3885 With the --no-check-certificate things explained: Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > .gitlab-ci.yml | 173 +++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 173 insertions(+) > create mode 100644 .gitlab-ci.yml > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > new file mode 100644 > index 00000000000000000000..a0f3ecb9d7f7f95443a7 > --- /dev/null > +++ b/.gitlab-ci.yml > @@ -0,0 +1,173 @@ > +latest-meson: > + stage: build > + image: base/archlinux:latest > + before_script: > + - pacman -Syu --noconfirm --needed > + base-devel > + meson > + libpciaccess > + libxslt docbook-xsl > + valgrind > + libatomic_ops > + cairo cunit > + script: > + - meson _build > + -D amdgpu=true > + -D cairo-tests=true > + -D etnaviv=true > + -D exynos=true > + -D freedreno=true > + -D freedreno-kgsl=true > + -D intel=true > + -D libkms=true > + -D man-pages=true > + -D nouveau=true > + -D omap=true > + -D radeon=true > + -D tegra=true > + -D udev=true > + -D valgrind=true > + -D vc4=true > + -D vmwgfx=true > + - ninja -C _build > + - ninja -C _build test > + > +latest-autotools: > + stage: build > + image: base/archlinux:latest > + before_script: > + - pacman -Syu --noconfirm --needed > + base-devel > + libpciaccess > + libxslt docbook-xsl > + valgrind > + libatomic_ops > + cairo cunit > + xorg-util-macros > + git # autogen.sh depends on git > + script: > + - mkdir _build > + - cd _build > + - ../autogen.sh > + --enable-udev > + --enable-libkms > + --enable-intel > + --enable-radeon > + --enable-admgpu > + --enable-nouveau > + --enable-vmwfgx > + --enable-omap-experimental-api > + --enable-exynos-experimental-api > + --enable-freedreno > + --enable-freedreno-kgsl > + --enable-tegra-experimental-api > + --enable-vc4 > + --enable-etnaviv-experimental-api > + - make > + - make check > + > +oldest-meson: > + stage: build > + image: debian:stable > + before_script: > + - printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n" > + 'path-exclude=/usr/share/doc/*' > + 'path-exclude=/usr/share/man/*' > + - printf > /usr/sbin/policy-rc.d "%s\n" > + '#!/bin/sh' > + 'exit 101' > + - chmod +x /usr/sbin/policy-rc.d > + - apt-get update > + - apt-get -y --no-install-recommends install > + build-essential > + pkg-config > + xsltproc > + libxslt1-dev docbook-xsl > + valgrind > + libatomic-ops-dev > + libcairo2-dev libcunit1-dev > + ninja-build > + python3 python3-pip > + wget > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && > + tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 && > + (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install) > + - pip3 install wheel setuptools > + - pip3 install meson==0.43 > + script: > + - export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig > + - export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH" > + - meson _build > + -D amdgpu=true > + -D cairo-tests=true > + -D etnaviv=true > + -D exynos=true > + -D freedreno=true > + -D freedreno-kgsl=true > + -D intel=true > + -D libkms=true > + -D man-pages=true > + -D nouveau=true > + -D omap=true > + -D radeon=true > + -D tegra=true > + -D udev=true > + -D valgrind=true > + -D vc4=true > + -D vmwgfx=true > + - ninja -C _build > + - ninja -C _build test > + > +oldest-autotools: > + stage: build > + image: debian:stable > + before_script: > + - printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n" > + 'path-exclude=/usr/share/doc/*' > + 'path-exclude=/usr/share/man/*' > + - printf > /usr/sbin/policy-rc.d "%s\n" > + '#!/bin/sh' > + 'exit 101' > + - chmod +x /usr/sbin/policy-rc.d > + - apt-get update > + - apt-get -y --no-install-recommends install > + build-essential > + automake > + autoconf > + libtool > + pkg-config > + xsltproc > + libxslt1-dev docbook-xsl > + valgrind > + libatomic-ops-dev > + libcairo2-dev libcunit1-dev > + wget > + xutils-dev > + git # autogen.sh depends on git > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && > + tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 && > + (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install) > + script: > + - export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig > + - export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH" > + - mkdir _build > + - cd _build > + - ../autogen.sh > + --enable-udev > + --enable-libkms > + --enable-intel > + --enable-radeon > + --enable-admgpu > + --enable-nouveau > + --enable-vmwfgx > + --enable-omap-experimental-api > + --enable-exynos-experimental-api > + --enable-freedreno > + --enable-freedreno-kgsl > + --enable-tegra-experimental-api > + --enable-vc4 > + --enable-etnaviv-experimental-api > + - make > + - make check > -- > Cheers, > Eric > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
Hi, On Mon, 3 Sep 2018 at 09:45, Daniel Vetter <daniel@ffwll.ch> wrote: > On Fri, Aug 31, 2018 at 03:18:56PM +0100, Eric Engestrom wrote: > > It currently does 4 builds: 2 using Meson and 2 using Autotools, 2 using > > the latest dependencies on ArchLinux and 2 using very old dependencies > > on Debian (including manually building libpciaccess to have the oldest > > version supported, to make sure it keeps being supported). > > > > All the build options are turned on for both Meson and Autotools. > > > > Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> > > --- > > See it in action on my fork: > > https://gitlab.freedesktop.org/eric/libdrm/pipelines/3885 > > With the --no-check-certificate things explained: > > Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Indeed, and also: Reviewed-by: Daniel Stone <daniels@collabora.com> Thanks for doing this! Cheers, Daniel
On Monday, 2018-09-03 10:43:36 +0200, Daniel Vetter wrote: > On Mon, Sep 03, 2018 at 09:07:10AM +0100, Eric Engestrom wrote: > > On Monday, 2018-09-03 09:50:06 +0200, Daniel Vetter wrote: > > > On Fri, Aug 31, 2018 at 05:13:25PM +0100, Eric Engestrom wrote: > > > > On Friday, 2018-08-31 16:03:44 +0100, Daniel Stone wrote: > > > > > Hi Eric, > > > > > > > > > > On Fri, 31 Aug 2018 at 15:22, Eric Engestrom <eric.engestrom@intel.com> wrote: > > > > > > + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && > > > > > > + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && > > > > > > > > > > Why are you using --no-check-certificate?! > > > > > > > > Right, forgot to add a comment for this, sorry. > > > > > > > > fd.o uses LetsEncrypt, which is not present in the ca-certificate on > > > > debian:stable. I had to choose between ignoring the certificate error or > > > > use a custom CA, which just didn't seem worth it. > > > > > > Slightly more modern distro then? On the kernel side we're going with > > > fedora:latest, that also tends to have all the latest bells&whistles we > > > need for compiling some of our things. > > > > I have two distros in this pipeline: arch to test the up-to-date stuff > > and debian to test the ancient stuff. > > Should I drop debian and just keep arch to only have the up-to-date test? > > Ah, I missed that. Makes sense (if you add a comment to explain this). > > > FYI, I'm planning on adding freebsd too (later this week hopefully). > > I think cross-compiling to arm/arm64, and making sure x86 (the 32bit > stuff) keeps working would be great too. If you go to the trouble of > testing all these things :-) Good points, I forgot about testing archs; I'll add those too, thanks :) > -Daniel > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000000000000000..a0f3ecb9d7f7f95443a7 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,173 @@ +latest-meson: + stage: build + image: base/archlinux:latest + before_script: + - pacman -Syu --noconfirm --needed + base-devel + meson + libpciaccess + libxslt docbook-xsl + valgrind + libatomic_ops + cairo cunit + script: + - meson _build + -D amdgpu=true + -D cairo-tests=true + -D etnaviv=true + -D exynos=true + -D freedreno=true + -D freedreno-kgsl=true + -D intel=true + -D libkms=true + -D man-pages=true + -D nouveau=true + -D omap=true + -D radeon=true + -D tegra=true + -D udev=true + -D valgrind=true + -D vc4=true + -D vmwgfx=true + - ninja -C _build + - ninja -C _build test + +latest-autotools: + stage: build + image: base/archlinux:latest + before_script: + - pacman -Syu --noconfirm --needed + base-devel + libpciaccess + libxslt docbook-xsl + valgrind + libatomic_ops + cairo cunit + xorg-util-macros + git # autogen.sh depends on git + script: + - mkdir _build + - cd _build + - ../autogen.sh + --enable-udev + --enable-libkms + --enable-intel + --enable-radeon + --enable-admgpu + --enable-nouveau + --enable-vmwfgx + --enable-omap-experimental-api + --enable-exynos-experimental-api + --enable-freedreno + --enable-freedreno-kgsl + --enable-tegra-experimental-api + --enable-vc4 + --enable-etnaviv-experimental-api + - make + - make check + +oldest-meson: + stage: build + image: debian:stable + before_script: + - printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n" + 'path-exclude=/usr/share/doc/*' + 'path-exclude=/usr/share/man/*' + - printf > /usr/sbin/policy-rc.d "%s\n" + '#!/bin/sh' + 'exit 101' + - chmod +x /usr/sbin/policy-rc.d + - apt-get update + - apt-get -y --no-install-recommends install + build-essential + pkg-config + xsltproc + libxslt1-dev docbook-xsl + valgrind + libatomic-ops-dev + libcairo2-dev libcunit1-dev + ninja-build + python3 python3-pip + wget + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && + tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 && + (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install) + - pip3 install wheel setuptools + - pip3 install meson==0.43 + script: + - export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig + - export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH" + - meson _build + -D amdgpu=true + -D cairo-tests=true + -D etnaviv=true + -D exynos=true + -D freedreno=true + -D freedreno-kgsl=true + -D intel=true + -D libkms=true + -D man-pages=true + -D nouveau=true + -D omap=true + -D radeon=true + -D tegra=true + -D udev=true + -D valgrind=true + -D vc4=true + -D vmwgfx=true + - ninja -C _build + - ninja -C _build test + +oldest-autotools: + stage: build + image: debian:stable + before_script: + - printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n" + 'path-exclude=/usr/share/doc/*' + 'path-exclude=/usr/share/man/*' + - printf > /usr/sbin/policy-rc.d "%s\n" + '#!/bin/sh' + 'exit 101' + - chmod +x /usr/sbin/policy-rc.d + - apt-get update + - apt-get -y --no-install-recommends install + build-essential + automake + autoconf + libtool + pkg-config + xsltproc + libxslt1-dev docbook-xsl + valgrind + libatomic-ops-dev + libcairo2-dev libcunit1-dev + wget + xutils-dev + git # autogen.sh depends on git + - LIBPCIACCESS_VERSION=libpciaccess-0.10 && + wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 && + tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 && + (cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install) + script: + - export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig + - export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH" + - mkdir _build + - cd _build + - ../autogen.sh + --enable-udev + --enable-libkms + --enable-intel + --enable-radeon + --enable-admgpu + --enable-nouveau + --enable-vmwfgx + --enable-omap-experimental-api + --enable-exynos-experimental-api + --enable-freedreno + --enable-freedreno-kgsl + --enable-tegra-experimental-api + --enable-vc4 + --enable-etnaviv-experimental-api + - make + - make check
It currently does 4 builds: 2 using Meson and 2 using Autotools, 2 using the latest dependencies on ArchLinux and 2 using very old dependencies on Debian (including manually building libpciaccess to have the oldest version supported, to make sure it keeps being supported). All the build options are turned on for both Meson and Autotools. Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> --- See it in action on my fork: https://gitlab.freedesktop.org/eric/libdrm/pipelines/3885 --- .gitlab-ci.yml | 173 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 173 insertions(+) create mode 100644 .gitlab-ci.yml