blob: 88ad70115d384ca24c26d9bbb964fac7d470b5fb [file] [log] [blame]
Karl Schultz6f099202016-12-29 16:23:42 -07001# Build Configuration for Travis CI
2# https://travis-ci.org
3
Peter Mackay466bd4e2016-10-21 15:54:03 +01004dist: trusty
Karl Schultz6f099202016-12-29 16:23:42 -07005sudo: required
6language: cpp
7
8matrix:
Cody Northrop05cb4ab2017-01-03 08:14:02 -07009 # Show final status immediately if a test fails.
10 fast_finish: true
Karl Schultz6f099202016-12-29 16:23:42 -070011 include:
12 # Android build.
13 - os: linux
14 compiler: gcc
Cody Northrop93f05622017-01-03 08:06:03 -070015 env: VULKAN_BUILD_TARGET=ANDROID ANDROID_TARGET=android-23 ANDROID_ABI=armeabi-v7a
Karl Schultz6f099202016-12-29 16:23:42 -070016 # Linux GCC debug build.
17 - os: linux
18 compiler: gcc
19 env: VULKAN_BUILD_TARGET=LINUX
20 # Linux clang debug build.
21 - os: linux
22 compiler: clang
23 env: VULKAN_BUILD_TARGET=LINUX
24
Cody Northrop93f05622017-01-03 08:06:03 -070025android:
26 components:
27 - tools
28 - platform-tools
29 - build-tools-23.0.2
30 - android-23
31
Cody Northropfa5f2962017-01-03 08:07:15 -070032cache:
33 directories:
34 - external
35 - build-android/external
36
Karl Schultz6f099202016-12-29 16:23:42 -070037before_install:
38 # Install the appropriate Linux packages.
39 - if [[ "$VULKAN_BUILD_TARGET" == "LINUX" ]]; then
Karl Schultz30aa1a02017-01-05 06:43:15 -070040 sudo apt-get -y install libxkbcommon-dev libwayland-dev libmirclient-dev;
Karl Schultz6f099202016-12-29 16:23:42 -070041 fi
42
43 # Install the Android NDK.
44 - if [[ "$VULKAN_BUILD_TARGET" == "ANDROID" ]]; then
45 export ARCH=`uname -m`;
Cody Northrop29d7c962017-01-03 08:06:43 -070046 wget http://dl.google.com/android/repository/android-ndk-r13b-linux-${ARCH}.zip;
47 unzip -u -q android-ndk-r13b-linux-${ARCH}.zip;
48 export ANDROID_NDK_HOME=`pwd`/android-ndk-r13b;
Karl Schultz6f099202016-12-29 16:23:42 -070049 export JAVA_HOME="/usr/lib/jvm/java-8-oracle";
50 export PATH="$ANDROID_NDK_HOME:$PATH";
51 fi
52
Peter Mackay466bd4e2016-10-21 15:54:03 +010053script:
Karl Schultz6f099202016-12-29 16:23:42 -070054 - if [[ "$VULKAN_BUILD_TARGET" == "LINUX" ]]; then
55 ./update_external_sources.sh;
56 cmake -H. -Bdbuild -DCMAKE_BUILD_TYPE=Debug;
57 make -C dbuild;
58 fi
59 - if [[ "$VULKAN_BUILD_TARGET" == "ANDROID" ]]; then
Cody Northrop05cb4ab2017-01-03 08:14:02 -070060 pushd build-android;
Karl Schultz6f099202016-12-29 16:23:42 -070061 ./update_external_sources_android.sh;
62 ./android-generate.sh;
63 ndk-build APP_ABI=$ANDROID_ABI;
Cody Northrop05cb4ab2017-01-03 08:14:02 -070064 popd;
Karl Schultz6f099202016-12-29 16:23:42 -070065 fi