summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: e6dd29fd24447831e17772a0498d112278d67377 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
---
sudo: required
dist: bionic

language: c

env:
  global:
    - ANDROID_HOME=${HOME}/android-sdk
    - TOOLS=${ANDROID_HOME}/tools
    - PATH=${ANDROID_HOME}:${ANDROID_HOME}/emulator:${TOOLS}:${TOOLS}/bin:${ANDROID_HOME}/platform-tools:${PATH}
    - GRAVIS="https://raw.githubusercontent.com/DanySK/Gravis-CI/master/"
    - JDK="1.8"
    - HOST_TAG=linux-x86_64
    - NDK=${ANDROID_HOME}/ndk/20.1.5948944
    - TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/$HOST_TAG
    - AR=$TOOLCHAIN/bin/aarch64-linux-android-ar
    - AS=$TOOLCHAIN/bin/aarch64-linux-android-as
    - CC=$TOOLCHAIN/bin/aarch64-linux-android21-clang
    - CXX=$TOOLCHAIN/bin/aarch64-linux-android21-clang++
    - LD=$TOOLCHAIN/bin/aarch64-linux-android-ld
    - RANLIB=$TOOLCHAIN/bin/aarch64-linux-android-ranlib
    - STRIP=$TOOLCHAIN/bin/aarch64-linux-android-strip

matrix:
  include:
    - os: linux
      env: HOST=arm-linux-androideabi RUNTESTFLAGS="-v -v -v --target_board android-adb" DEJAGNU="/opt/.travis/site.exp"

before_install:
  # Set up JDK 8 for Android SDK - Java is universally needed: codacy, unit tests, emulators
  - curl "${GRAVIS}.install-jdk-travis.sh" --output ~/.install-jdk-travis.sh
  - export TARGET_JDK="${JDK}"
  - JDK="1.8"
  - source ~/.install-jdk-travis.sh
  - wget -q https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -O android-sdk-tools.zip
  - unzip -q android-sdk-tools.zip -d ${ANDROID_HOME}
  - rm android-sdk-tools.zip
  - mkdir ~/.android
  - echo 'count=0' > ~/.android/repositories.cfg
  - yes | sdkmanager --licenses >/dev/null
  - echo y | sdkmanager --no_https "platform-tools" >/dev/null
  - echo y | sdkmanager --no_https "tools" >/dev/null
  - echo y | sdkmanager --no_https "build-tools;28.0.3" >/dev/null
  - echo y | sdkmanager --no_https "platforms;android-28" >/dev/null
  - echo y | sdkmanager --no_https "ndk;20.1.5948944" >/dev/null
  - echo y | sdkmanager --no_https "emulator" >/dev/null
  - echo y | sdkmanager --no_https --list
  - sdkmanager "system-images;android-24;default;arm64-v8a"
  - echo n | avdmanager create avd --name testlibffi -k "system-images;android-24;default;arm64-v8a"
  - find /home/travis/.android/avd | xargs ls -l
  - ls -l /home/travis/.android/avd/testlibffi.avd/snapshots/default_boot/ram.img
  - sudo chgrp libvirt /home/travis/.android/avd/testlibffi.avd/snapshots/default_boot/ram.img
  - chmod 766 /home/travis/.android/avd/testlibffi.avd/snapshots/default_boot/ram.img
  - ls -l /home/travis/.android/avd/testlibffi.avd/snapshots/default_boot/ram.img


install:
  - travis_wait 30 ./.travis/install.sh

script:
  - travis_wait 115 sleep infinity &
  - ./autogen.sh
  - ./configure --host aarch64-linux-android
  - make
  - ls -l ${ANDROID_HOME}/emulator
  - emulator-headless -avd testlibffi -no-skin -no-audio -no-window &
  - sleep 30 # FIXME
  - make check RUNTESTFLAGS="-a $RUNTESTFLAGS"