OSDN Git Service

intel/fs: Fix extract_u8 of an odd byte from a 64-bit integer
[android-x86/external-mesa.git] / .travis.yml
1 language: c
2
3 dist: xenial
4
5 cache:
6   ccache: true
7
8 env:
9   global:
10     - PKG_CONFIG_PATH="$PKG_CONFIG_PATH"
11
12 matrix:
13   include:
14     - env:
15         - LABEL="macOS make"
16         - BUILD=make
17         - MAKEFLAGS="-j4"
18         - MAKE_CHECK_COMMAND="make check"
19         - DRI_LOADERS="--with-platforms=x11 --disable-egl"
20       os: osx
21     - env:
22         - LABEL="macOS meson"
23         - BUILD=meson
24         - UNWIND="false"
25         - DRI_LOADERS="-Dglx=dri -Dgbm=false -Degl=false -Dplatforms=x11 -Dosmesa=none"
26         - GALLIUM_ST="-Ddri3=true -Dgallium-vdpau=false -Dgallium-xvmc=false -Dgallium-omx=disabled -Dgallium-va=false -Dgallium-xa=false -Dgallium-nine=false -Dgallium-opencl=disabled"
27       os: osx
28
29 before_install:
30   - |
31     if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
32       HOMEBREW_NO_AUTO_UPDATE=1 brew install python3 ninja expat gettext
33       # Set PATH for homebrew pip3 installs
34       PATH="$HOME/Library/Python/3.6/bin:${PATH}"
35       # Set PKG_CONFIG_PATH for keg-only expat
36       PKG_CONFIG_PATH="/usr/local/opt/expat/lib/pkgconfig:${PKG_CONFIG_PATH}"
37       # Set PATH for keg-only gettext
38       PATH="/usr/local/opt/gettext/bin:${PATH}"
39
40       # Install xquartz for prereqs ...
41       XQUARTZ_VERSION="2.7.11"
42       wget -nv https://dl.bintray.com/xquartz/downloads/XQuartz-${XQUARTZ_VERSION}.dmg
43       hdiutil attach XQuartz-${XQUARTZ_VERSION}.dmg
44       sudo installer -pkg /Volumes/XQuartz-${XQUARTZ_VERSION}/XQuartz.pkg -target /
45       hdiutil detach /Volumes/XQuartz-${XQUARTZ_VERSION}
46       # ... and set paths
47       PATH="/opt/X11/bin:${PATH}"
48       PKG_CONFIG_PATH="/opt/X11/share/pkgconfig:/opt/X11/lib/pkgconfig:${PKG_CONFIG_PATH}"
49       ACLOCAL="aclocal -I /opt/X11/share/aclocal -I /usr/local/share/aclocal"
50     fi
51
52 install:
53   # Install a more modern meson from pip, since the version in the
54   # ubuntu repos is often quite old.
55   - if test "x$BUILD" = xmeson; then
56       pip3 install --user meson;
57       pip3 install --user mako;
58     fi
59
60   # Install autotools build dependencies
61   - if test "x$BUILD" = xmake; then
62       pip2 install --user mako;
63     fi
64
65   # Install dependencies where we require specific versions (or where
66   # disallowed by Travis CI's package whitelisting).
67
68 script:
69   - if test "x$BUILD" = xmake; then
70       export CFLAGS="$CFLAGS -isystem`pwd`";
71
72       mkdir build &&
73       cd build &&
74       ../autogen.sh
75         --enable-autotools
76         --enable-debug
77         $LIBUNWIND_FLAGS
78         $DRI_LOADERS
79         --with-dri-drivers=$DRI_DRIVERS
80         $GALLIUM_ST
81         --with-gallium-drivers=$GALLIUM_DRIVERS
82         --with-vulkan-drivers=$VULKAN_DRIVERS
83         --disable-llvm-shared-libs
84         &&
85       make && eval $MAKE_CHECK_COMMAND;
86     fi
87
88   - |
89     if test "x$BUILD" = xmeson; then
90       if test -n "$LLVM_CONFIG"; then
91         # We need to control the version of llvm-config we're using, so we'll
92         # generate a native file to do so. This requires meson >=0.49
93         #
94         echo -e "[binaries]\nllvm-config = '`which $LLVM_CONFIG`'" > native.file
95
96         $LLVM_CONFIG --version
97       else
98         : > native.file
99       fi
100
101       export CFLAGS="$CFLAGS -isystem`pwd`"
102       meson _build \
103                    --native-file=native.file \
104                    -Dbuild-tests=true \
105                    -Dlibunwind=${UNWIND} \
106                    ${DRI_LOADERS} \
107                    -Ddri-drivers=${DRI_DRIVERS:-[]} \
108                    ${GALLIUM_ST} \
109                    -Dgallium-drivers=${GALLIUM_DRIVERS:-[]} \
110                    -Dvulkan-drivers=${VULKAN_DRIVERS:-[]}
111       meson configure _build
112       ninja -C _build
113       ninja -C _build test
114     fi