_realname=ruby
pkgbase="${MINGW_PACKAGE_PREFIX}-ruby31"
pkgname="${MINGW_PACKAGE_PREFIX}-ruby31"
pkgver=3.1.3
pkgrel=1
pkgdesc="An object-oriented language for quick and easy programming (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64')
url="https://www.ruby-lang.org/en"
license=("BSD, custom")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" "${MINGW_PACKAGE_PREFIX}-pkg-config" "autoconf" "automake-wrapper")
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
         "${MINGW_PACKAGE_PREFIX}-gdbm>=1.17"
         "${MINGW_PACKAGE_PREFIX}-gmp"
         "${MINGW_PACKAGE_PREFIX}-libffi"
         "${MINGW_PACKAGE_PREFIX}-libyaml"
         "${MINGW_PACKAGE_PREFIX}-openssl"
         "${MINGW_PACKAGE_PREFIX}-zlib")
options=('staticlibs' 'strip')
source=("https://cache.ruby-lang.org/pub/ruby/${pkgver%.*}/${_realname}-${pkgver}.tar.xz")
sha256sums=('4ee161939826bcdfdafa757cf8e293a7f14e357f62be7144f040335cc8c7371a')

build() {

  CPPFLAGS+=" -DFD_SETSIZE=2048"
  CFLAGS="-O3 -fno-fast-math -fstack-protector-strong"
  LDFLAGS="-pipe -s -fstack-protector-strong"

  [[ -d "${srcdir}/build-${MINGW_CHOST}" ]] && rm -rf "${srcdir}/build-${MINGW_CHOST}"
  mkdir -p "${srcdir}/build-${MINGW_CHOST}" && cd "${srcdir}/build-${MINGW_CHOST}"

  ../${_realname}-${pkgver}/configure \
    --prefix=${MINGW_PREFIX} \
    --build=${MINGW_CHOST} \
    --host=${MINGW_CHOST} \
    --target=${MINGW_CHOST} \
    --with-out-ext=readline,pty,syslog

  make showflags main
}

package() {
  cd "${srcdir}/build-${MINGW_CHOST}"
  make -f GNUMakefile DESTDIR="${pkgdir}" install-nodoc
  for script in {gem,}; do
    install ${srcdir}/ruby-${pkgver}/bin/${script} \
      ${pkgdir}${MINGW_PREFIX}/bin/
  done
}
