version: 2.1
orbs:
  android: circleci/android@0.2.0
jobs:
  build:
    working_directory: ~/code
    docker:
      - image: circleci/android:api-29
    environment:
      JVM_OPTS: -Xmx3200m
    steps:
      - run:
          name: Setup Git email and user for Cerbero
          command: git config --global user.email "ci@beatscratch.io" && git config --global user.name "CI testing"
      - android/install-ndk:
          ndk-version: android-ndk-r18b
          ndk-sha: 500679655da3a86aecf67007e8ab230ea9b4dd7b
      - run:
          name: Link NDK for Cerbero
          command: |
            mkdir -p /home/circleci/android-sdk-linux
            ln -s /opt/android/android-ndk-r18b /home/circleci/android-sdk-linux/ndk-bundle
      - run:
          name: Install FluidSynth build dependencies
          command: sudo apt-get update && sudo apt-get install autotools-dev automake autoconf libtool g++ autopoint make cmake
            bison flex yasm pkg-config gtk-doc-tools libxv-dev libx11-dev libpulse-dev
            python3-dev texinfo gettext build-essential pkg-config doxygen curl libxext-dev
            libxi-dev x11proto-record-dev libxrender-dev libgl1-mesa-dev libxfixes-dev
            libxdamage-dev libxcomposite-dev libasound2-dev libxml-simple-perl dpkg-dev
            debhelper build-essential devscripts fakeroot transfig gperf libdbus-glib-1-dev
            wget glib-networking libxtst-dev libxrandr-dev libglu1-mesa-dev libegl1-mesa-dev
            git subversion xutils-dev intltool ccache python3-setuptools autogen maven make
      - checkout
      - run:
          name: Prepare FluidSynth Android
          working_directory: doc/android
          command: |
            make -f Makefile.android prepare
      - run:
          name: Build FluidSynth Android
          working_directory: doc/android
          command: |
            make -f Makefile.android
      - run:
          name: Show directory contents
          working_directory: doc/android
          command: |
            ls -R
      - run:
          name: Zip FluidSnyth Android Distribution
          working_directory: doc/android
          command: zip -r android-dist.zip dist
      - store_artifacts:
          path: doc/android/android-dist.zip
          destination: android-dist.zip