[Mesa-dev] [HOWTO] CI on appveyor with a linux image

Jose Fonseca jfonseca at vmware.com
Wed May 23 11:55:17 UTC 2018


I don't object merging Linux into appveyor.yml somehow, but I really 
don't have the time to figure out how to do it.

I also fear that Linux infrastructure might be unstable in this initial 
initial period, and we end up receiving false failure notification 
emails. (Even appveyor windows builds suffer of that from time to time.)

Personally, I think the ideal would be to have travis and appveyor 
enabled on https://github.com/mesa3d/mesa , with notification emails to 
the list

Jose


On 21/05/18 22:39, Benedikt Schemmer wrote:
> I thought this might be interesting because currently appveyor is only used with MSVC and LLVM 3.3.1
> 
> They can however provide Ubuntu 16.04 LTS. Its free for OSS.
> You only need some kind of repository.
> 
> Basic setup is easy
> https://www.appveyor.com/docs/
> 
> The hard part is the appveyor.yml file, which you can find below.
> This builds mesa every time you commit.
> 
> Probably not the best config options and only for 64-bit, because I dont know how to do 32-bit builds on Ubuntu.
> So if somebody does, help is more than welcome.
> 
> And if the Vmware guys feel like sharing, this can be merged with the current appveyor.yml (somehow, doesn't seem to hard though)
> 
> p.s. there are line breaks after the autogen that you will have to remove manually (should be one long line)
> ---
> # http://www.appveyor.com/doc
> #
> # To setup AppVeyor for your own personal repositories do the following:
> # - Sign up
> # - Add a new project
> # - Select Git and fill in the Git clone URL
> # - Setup a Git hook as explained in
> #   https://github.com/appveyor/webhooks#installing-git-hook
> # - Check 'Settings > General > Skip branches without appveyor.yml'
> # - Check 'Settings > General > Rolling builds'
> # - Setup the global or project notifications to your liking
> #
> # Note that kicking (or restarting) a build via the web UI will not work, as it
> # will fail to find appveyor.yml .  The Git hook is the most practical way to
> # kick a build.
> #
> # See also:
> # - http://help.appveyor.com/discussions/problems/2209-node-grunt-build-specify-a-project-or-solution-file-the-directory-does-not-contain-a-project-or-solution-file
> # - http://help.appveyor.com/discussions/questions/1184-build-config-vs-appveyoryaml
> 
> version: '{build}'
> 
> branches:
>    except:
>    - /^travis.*$/
> 
> # Don't download the full Mesa history to speed up cloning.  However the clone
> # depth must not be too small, otherwise builds might fail when lots of patches
> # are committed in succession, because the desired commit is not found on the
> # truncated history.
> #
> # See also:
> # - https://www.appveyor.com/blog/2014/06/04/shallow-clone-for-git-repositories
> clone_depth: 100
> 
> image: ubuntu
> platform: Any CPU
> configuration: Release
> 
> 
> install:
> - ls -al
> - sh: sudo sed -i~orig -e 's$# deb-src http://us$deb-src http://us$' /etc/apt/sources.list
> - sh: sudo add-apt-repository ppa:oibaf/graphics-drivers
> - sh: sudo apt-get update
> - sh: sudo DEBIAN_FRONTEND=noninteractive apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" upgrade
> - sh: sudo apt-get build-dep mesa -y
> - sh: sudo apt-get install libxvmc-dev libxcb-xvmc0-dev libomxil-bellagio-dev -y
> 
> build_script:
> - sh: ./autogen.sh --enable-dri --with-dri-drivers="nouveau i915 i965 r200 radeon swrast" --enable-osmesa --enable-glx-tls --enable-shared-glapi --enable-texture-float --enable-driglx-direct
> --enable-dri3 --with-platforms="x11 wayland drm" --enable-xa --enable-llvm ac_cv_path_LLVM_CONFIG=llvm-config-5.0 --enable-vdpau --enable-omx-bellagio --enable-va --enable-xvmc --enable-opencl
> --enable-opencl-icd --enable-nine --enable-gallium-extra-hud --enable-lmsensors --with-gallium-drivers=" nouveau svga r600 r300 i915 virgl radeonsi swrast" --enable-gles1 --enable-gles2 --enable-gle
> --with-vulkan-drivers=intel,radeon
> - sh: make
> - sh: sudo make install
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 



More information about the mesa-dev mailing list