# Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
# Contributor: FigoDaPaura <ffigoDaPaura>

pkgname=lib32-virtualgl
pkgver=3.1.4
pkgrel=1
pkgdesc="32-bit serverside components for 64-bit VirtualGL servers"
arch=('x86_64')
url="https://virtualgl.org"
license=('LGPL')
depends=('virtualgl' 'lib32-libxv' 'lib32-glu' 'lib32-libjpeg-turbo' 'lib32-opencl-driver' 'lib32-ocl-icd')
makedepends=('lib32-libxv' 'lib32-glu' 'virtualgl' 'cmake' 'gcc-multilib' 'lib32-mesa' 'lib32-mesa-libgl' 'lib32-libxtst' 'opencl-headers' 'ninja')
source=("https://github.com/VirtualGL/virtualgl/releases/download/${pkgver}/VirtualGL-${pkgver}.tar.gz"{,.sig})
sha512sums=('266af1ddb923e07f52bba166cd6dd6066b371928946a0cd7cf5d200dde2b4bad6d3c7f1477dd6c575f830b42705468d444e413eedb4305ec34dfefab138d949f'
            'SKIP')
b2sums=('d651fd657befff706b846ff0e33801b659b50944fb9abc1b9cb8333fe1b897790e513a9156bea903d9337d093f78d6a74964be5711bdd4d1d43d76923dd96a7c'
        'SKIP')
validpgpkeys=('AE1A7BA4EFFF9A9987E1474C4BACCAB36E7FE9A1') # The VirtualGL Project (Signing key for official binaries) <information@VirtualGL.org>

prepare() {
  cd "VirtualGL-$pkgver"

  # FS#48403
  export LDFLAGS="${LDFLAGS/--as-needed,}"
}

build() {
  cd "VirtualGL-$pkgver"

  export CC="gcc -m32"
  export CXX="g++ -m32"
  export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"

  cmake \
      -GNinja \
      -Bbuild \
      -DCMAKE_INSTALL_PREFIX=/usr \
      -DCMAKE_INSTALL_LIBDIR=/usr/lib32 \
      -DCMAKE_INSTALL_BINDIR=/usr/bin \
      -DCMAKE_BUILD_TYPE='None' \
      -DTJPEG_INCLUDE_DIR=/usr/include \
      -DTJPEG_LIBRARY=/usr/lib32/libturbojpeg.so \
      -DX11_X11_LIB=/usr/lib32/libX11.so \
      -DX11_Xext_LIB=/usr/lib32/libXext.so \
      -DOPENGL_gl_LIBRARY=/usr/lib32/libGL.so
  ninja -C build
}

package() {
  cd "VirtualGL-$pkgver"
  DESTDIR="$pkgdir" ninja install -C build

  cd "$pkgdir/usr"
  mv bin/glxspheres glxspheres32
  rm -rf bin
  mkdir -p bin
  mv glxspheres32 bin/

  rm -rf "$pkgdir/usr/share"
  rm -rf "$pkgdir/usr/include"
}
