Split the target to allow faster builds for each run. The overall build time will be more, yet Travis runs multiple builds in parallel so we're limited by the slowest one.
Things are split roughly as: - DRI loaders, classic DRI drivers, classic OSMesa - All Gallium drivers (minus the SWR) alongside st/dri (mesa) - The Vulkan drivers - currently only RADV, add a note why ANV is not enabled. Note that 'make check' is run only the first target since there's no tests of interest for the others. Signed-off-by: Emil Velikov <emil.veli...@collabora.com> --- .travis.yml | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 61 insertions(+), 13 deletions(-) diff --git a/.travis.yml b/.travis.yml index b5d9df5dddd..98c2c594328 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,26 +29,21 @@ env: matrix: include: - env: - - LABEL="make" + - LABEL="make loaders/classic DRI" - BUILD=make - MAKEFLAGS=-j2 - - LLVM_VERSION=3.9 - - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" + - RUN_CHECK=1 + # XXX: Add wayland platform + - DRI_LOADERS="--enable-glx --enable-gbm --enable-egl --with-egl-platforms=x11,drm,surfaceless --enable-osmesa" - DRI_DRIVERS="i915,i965,radeon,r200,swrast,nouveau" - - GALLIUM_DRIVERS="i915,nouveau,r300,r600,radeonsi,freedreno,svga,swrast,vc4,virgl,etnaviv,imx" - - VULKAN_DRIVERS="radeon" + - GALLIUM_DRIVERS="" + - VULKAN_DRIVERS="" addons: apt: - sources: - - llvm-toolchain-trusty-3.9 packages: - # From sources above - - llvm-3.9-dev - # Common - x11proto-xf86vidmode-dev - libexpat1-dev - libx11-xcb-dev - - libelf-dev - env: # NOTE: Building SWR is 2x (yes two) times slower than all the other # gallium drivers combined. @@ -60,6 +55,7 @@ matrix: - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" - OVERRIDE_CC=gcc-5 - OVERRIDE_CXX=g++-5 + - DRI_LOADERS="" - DRI_DRIVERS="" - GALLIUM_DRIVERS="swr" - VULKAN_DRIVERS="" @@ -78,6 +74,55 @@ matrix: - libx11-xcb-dev - libelf-dev - env: + - LABEL="make Gallium Drivers Other" + - BUILD=make + - MAKEFLAGS=-j2 + - LLVM_VERSION=3.9 + - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" + - DRI_LOADERS="" + - DRI_DRIVERS="" + - GALLIUM_DRIVERS="i915,nouveau,r300,r600,radeonsi,freedreno,svga,swrast,vc4,virgl,etnaviv,imx" + - VULKAN_DRIVERS="" + addons: + apt: + sources: + - llvm-toolchain-trusty-3.9 + packages: + # From sources above + - llvm-3.9-dev + # Common + - x11proto-xf86vidmode-dev + - libexpat1-dev + - libx11-xcb-dev + - libelf-dev + - env: + - LABEL="make Vulkan" + - BUILD=make + - MAKEFLAGS=-j2 + # XXX: Enable when we start building ANV. + - RUN_CHECK=0 + - LLVM_VERSION=3.9 + - LLVM_CONFIG="llvm-config-${LLVM_VERSION}" + # XXX: we want to test the WSI, but those are enabled via the EGL toggles + # XXX: Add wayland platform + - DRI_LOADERS="--enable-egl --with-egl-platforms=x11" + - DRI_DRIVERS="" + - GALLIUM_DRIVERS="" + # XXX: Add ANV + # It requires memfd support (introduced circa 3.17) yet the Travis-CI + # instance is shipping very old headers, despite having a 4.4 kernel. + - VULKAN_DRIVERS="radeon" + addons: + apt: + sources: + - llvm-toolchain-trusty-3.9 + packages: + - x11proto-xf86vidmode-dev + - libexpat1-dev + - libx11-xcb-dev + - llvm-3.9-dev + - libelf-dev + - env: - LABEL="scons" - BUILD=scons # Explicitly disable. @@ -209,13 +254,16 @@ script: test $OVERRIDE_CC && export CC=$OVERRIDE_CC; test $OVERRIDE_CXX && export CXX=$OVERRIDE_CXX; ./autogen.sh --enable-debug - --with-egl-platforms=x11,drm + $DRI_LOADERS --with-dri-drivers=$DRI_DRIVERS --with-gallium-drivers=$GALLIUM_DRIVERS --with-vulkan-drivers=$VULKAN_DRIVERS --disable-llvm-shared-libs ; - make && make check; + make; + if test "x$RUN_CHECK" = x1; then + make check; + fi fi - if test "x$BUILD" = xscons; then -- 2.11.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev