# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
# Contributor: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - disable LTO: -DENABLE_LTO='FALSE'
#  - cherry-pick upstream patch to fix ARM FTBFS

pkgbase=vbam
pkgname=(
  vbam-sdl
  vbam-wx
)
pkgver=2.1.4
pkgrel=3
pkgdesc='Nintendo GameBoy Advance emulator'
arch=(x86_64)
url=https://vba-m.com
license=(GPL2)
depends=(
  libgl
  libpng
  sdl2
  sfml
  zlib
)
makedepends=(
  cmake
  ffmpeg
  git
  libglvnd
  wxgtk3
  zip
)
source=(git+https://github.com/visualboyadvance-m/visualboyadvance-m.git#tag=8f4862de88de2f95866b7e501304f1e57a4e0abb?signed)
sha256sums=(SKIP)
validpgpkeys=(A0C0E526E36FD2138C149D4D08AB596679D86240) # Rafael Kitover <rkitover@gmail.com>

pkgver() {
  cd visualboyadvance-m

  git describe --tags | sed 's/^v//'
}

prepare() {
  for p in sdl wx; do
    if [[ -d build-$p ]]; then
      rm -rf build-$p
    fi
    mkdir build-$p
  done

  cd visualboyadvance-m
  git cherry-pick -n af0de1c4b308ef8d9a081ecf407805b75a99d877
}

build() {
  cd build-sdl

  cmake ../visualboyadvance-m \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_SKIP_RPATH=TRUE \
    -DENABLE_SDL=TRUE \
    -DENABLE_WX=FALSE \
    -DENABLE_LINK=TRUE \
    -DENABLE_LTO=FALSE
  make

  cd ../build-wx

  cmake ../visualboyadvance-m \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_SKIP_RPATH=TRUE \
    -DENABLE_SDL=FALSE \
    -DENABLE_WX=TRUE \
    -DENABLE_FFMPEG=TRUE \
    -DENABLE_LINK=TRUE \
    -DENABLE_LTO=FALSE \
    -DwxWidgets_CONFIG_EXECUTABLE=/usr/bin/wx-config-gtk3
  make
}

package_vbam-sdl() {
  backup=(etc/vbam.cfg)
  conflicts=(vbam-wx)

  make DESTDIR="${pkgdir}" -C build-sdl install
}

package_vbam-wx() {
  depends+=(
    glib2
    gtk3
    libavcodec.so
    libavformat.so
    libavutil.so
    libswscale.so
    openal
    wxgtk3
    zip
  )
  conflicts=(vbam-sdl)

  make DESTDIR="${pkgdir}" -C build-wx install
}

# vim: ts=2 sw=2 et: