gallium/docs: fix sublist formatting
[mesa.git] / .travis.yml
index 31cd5c27ecbf232cfde62f9457c0a85a3fe7333e..a3b094f9a1d703b301a2473be090ff14d09e7a02 100644 (file)
@@ -1,6 +1,7 @@
 language: c
 
-sudo: false
+sudo: true
+dist: trusty
 
 cache:
   directories:
@@ -10,12 +11,16 @@ addons:
   apt:
     packages:
       - libdrm-dev
-      - libudev-dev
       - x11proto-xf86vidmode-dev
       - libexpat1-dev
       - libxcb-dri2-0-dev
       - libx11-xcb-dev
-      - llvm-3.4-dev
+      - llvm-3.5-dev
+      # llvm-config is not in the dev package?
+      - llvm-3.5
+      # LLVM packaging is broken and misses this dep.
+      - libedit-dev
+      - scons
 
 env:
   global:
@@ -27,16 +32,30 @@ env:
     - DRI3PROTO_VERSION=dri3proto-1.0
     - PRESENTPROTO_VERSION=presentproto-1.0
     - LIBPCIACCESS_VERSION=libpciaccess-0.13.4
-    - LIBDRM_VERSION=libdrm-2.4.65
+    - LIBDRM_VERSION=libdrm-2.4.74
     - XCBPROTO_VERSION=xcb-proto-1.11
     - LIBXCB_VERSION=libxcb-1.11
     - LIBXSHMFENCE_VERSION=libxshmfence-1.2
     - PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig
+    - MAKEFLAGS=-j2
+  matrix:
+    - BUILD=make
+    - BUILD=scons
 
 install:
   - export PATH="/usr/lib/ccache:$PATH"
   - pip install --user mako
 
+  # Since libdrm gets updated in configure.ac regularly, try to pick up the
+  # latest version from there.
+  - for line in `grep "^LIBDRM.*_REQUIRED=" configure.ac`; do
+      old_ver=`echo $LIBDRM_VERSION | sed 's/libdrm-//'`;
+      new_ver=`echo $line | sed 's/.*REQUIRED=//'`;
+      if `echo "$old_ver,$new_ver" | tr ',' '\n' | sort -Vc 2> /dev/null`; then
+        export LIBDRM_VERSION="libdrm-$new_ver";
+      fi;
+    done
+
   # Install dependencies where we require specific versions (or where
   # disallowed by Travis CI's package whitelisting).
 
@@ -74,19 +93,21 @@ install:
 
   - wget http://dri.freedesktop.org/libdrm/$LIBDRM_VERSION.tar.bz2
   - tar -jxvf $LIBDRM_VERSION.tar.bz2
-  - (cd $LIBDRM_VERSION && ./configure --prefix=$HOME/prefix && make install)
+  - (cd $LIBDRM_VERSION && ./configure --prefix=$HOME/prefix --enable-vc4 --enable-freedreno --enable-etnaviv-experimental-api && make install)
 
   - wget $XORG_RELEASES/lib/$LIBXSHMFENCE_VERSION.tar.bz2
   - tar -jxvf $LIBXSHMFENCE_VERSION.tar.bz2
   - (cd $LIBXSHMFENCE_VERSION && ./configure --prefix=$HOME/prefix && make install)
 
-# Disabled LLVM (and therefore r300 and r600) because the build fails
-# with "undefined reference to `clock_gettime'" and "undefined
-# reference to `setupterm'" in llvmpipe.
 script:
-  - ./autogen.sh --enable-debug
-    --disable-gallium-llvm
-    --with-egl-platforms=x11,drm
-    --with-dri-drivers=i915,i965,radeon,r200,swrast,nouveau
-    --with-gallium-drivers=svga,swrast,vc4,virgl
-  - make && make check
+  - if test "x$BUILD" = xmake; then
+      ./autogen.sh --enable-debug
+        --with-egl-platforms=x11,drm
+        --with-dri-drivers=i915,i965,radeon,r200,swrast,nouveau
+        --with-gallium-drivers=i915,nouveau,r300,r600,freedreno,svga,swrast,vc4,virgl,etnaviv,imx
+        --disable-llvm-shared-libs
+        ;
+      make && make check;
+    elif test x$BUILD = xscons; then
+      scons llvm=1 && scons llvm=1 check;
+    fi