[Mesa-dev] [PATCH] travis: add meson build for vulkan drivers.

Eric Engestrom eric.engestrom at imgtec.com
Tue Oct 3 15:29:12 UTC 2017


On Monday, 2017-10-02 17:12:54 +0000, Dylan Baker wrote:
> v2: - use -isystem`pwd` instead of cp to include fake linux header (Eric, Emil)
> 
> Signed-off-by: Dylan Baker <dylanx.c.baker at intel.com>
> ---
>  .travis.yml | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
> 
> diff --git a/.travis.yml b/.travis.yml
> index d9a8bf5a9d4..ca766917f25 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -27,6 +27,7 @@ env:
>      - WAYLAND_PROTOCOLS_VERSION=wayland-protocols-1.8
>      - PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
>      - LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
> +    - PATH="$HOME/prefix/bin:$PATH"
>  
>  matrix:
>    include:
> @@ -393,10 +394,34 @@ matrix:
>              - libexpat1-dev
>              - libx11-xcb-dev
>              - libelf-dev
> +    - env:
> +        - LABEL="meson Vulkan"
> +        - BUILD=meson
> +        - MESON_OPTIONS="-Dbuild-tests=true"
> +      addons:
> +        apt:
> +          sources:
> +            - llvm-toolchain-trusty-3.9
> +          packages:
> +            # LLVM packaging is broken and misses these dependencies
> +            - libedit-dev
> +            # From sources above
> +            - llvm-3.9-dev
> +            # Common
> +            - xz-utils
> +            - libexpat1-dev
> +            - libelf-dev
> +            - python3-pip
>  
>  install:
>    - pip install --user mako
>  
> +  # Install the latest meson from pip, since the version in the ubuntu repos is
> +  # often quite old.
> +  - if test "x$BUILD" = xmeson; then
> +      pip3 install --user meson;
> +    fi
> +
>    # 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
> @@ -471,6 +496,11 @@ install:
>    - tar -axvf $WAYLAND_PROTOCOLS_VERSION.tar.xz
>    - (cd $WAYLAND_PROTOCOLS_VERSION && ./configure --prefix=$HOME/prefix && make install)
>  
> +  # Meson requires ninja >= 1.6, but trusty has 1.3.x
> +  - wget https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-linux.zip;
> +  - unzip ninja-linux.zip
> +  - mv ninja $HOME/prefix/bin/
> +
>    # Generate the header since one is missing on the Travis instance
>    - mkdir -p linux
>    - printf "%s\n" \
> @@ -510,3 +540,9 @@ script:
>        test -n "$OVERRIDE_CXX" && export CXX="$OVERRIDE_CXX";
>        scons $SCONS_TARGET && eval $SCONS_CHECK_COMMAND;
>      fi
> +
> +  - if test "x$BUILD" = xmeson; then
> +      export CC="$CC -isystem`pwd`";

I also missed that in the make script :]
I'd feel more comfortable having flags like this in the CFLAGS though,
but I guess for now it's better to have consistency.

Just to confirm, the series is
Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com>

You have commit rights, right?

> +      meson _build $MESON_OPTIONS;
> +      ninja -C _build test;
> +    fi
> -- 
> 2.14.1
> 


More information about the mesa-dev mailing list