# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - explicitly link v5/v6 with libatomic

pkgname=qt6-3d
_qtver=6.1.3
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='C++ and QML APIs for easy inclusion of 3D graphics'
depends=(qt6-base)
makedepends=(cmake qt6-declarative qt6-shadertools vulkan-headers) # assimp
optdepends=('qt6-shadertools: RHI renderer' 'qt6-declarative: QML bindings')
groups=(qt6)
_pkgfn="${pkgname/6-/}-everywhere-src-$_qtver"
source=(https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz
        qt6-3d-gcc11.patch)
sha256sums=('dd53b318052b435905ad3889e0904d852bd1e80884932a675c3f428974f2bbdf'
            'b056d66a24956755c2aaddc4adddd71f5a945ff9795b0cbf9f43ab4d43b4f8f5')

prepare() {
  patch -d $_pkgfn -p1 < qt6-3d-gcc11.patch # Fix build with GCC 11
}

build() {
  [[ $CARCH == "arm" || $CARCH == "armv6h" ]] && echo "target_link_libraries(3DCore PRIVATE atomic)" >> ${_pkgfn}/src/core/CMakeLists.txt
  cmake -B build -S $_pkgfn
  cmake --build build
}

package() {
  DESTDIR="$pkgdir" cmake --install build

  install -d "$pkgdir"/usr/share/licenses
  ln -s /usr/share/licenses/qt6-base "$pkgdir"/usr/share/licenses/$pkgname
}