# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=ruby-posix-spawn
_gemname=posix-spawn
pkgver=0.3.15
pkgrel=3
pkgdesc="Ruby process spawning library"
url="https://github.com/rtomayko/posix-spawn"
arch="all"
license="MIT"
checkdepends="ruby-minitest ruby-rake ruby-rake-compiler"
makedepends="ruby ruby-dev"
options="!check"  # tests fail on builders, cannot reproduce locally
source="$pkgname-$pkgver.tar.gz::https://github.com/rtomayko/$_gemname/archive/v$pkgver.tar.gz
	gemspec.patch
	tests-skip-failing.patch
	rakefile-skip-build.patch
	gcc14.patch"
builddir="$srcdir/$_gemname-$pkgver"

build() {
	gem build $_gemname.gemspec

	gem install --local \
		--install-dir dist \
		--ignore-dependencies \
		--no-document \
		--verbose \
		$_gemname

	# Needed for tests.
	cp -l dist/extensions/*/*/$_gemname-*/*.so lib/
}

check() {
	rake test
}

package() {
	local gemdir
	gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')"
	cd "$builddir"/dist

	mkdir -p "$gemdir"
	cp -r extensions gems specifications "$gemdir"/

	# Remove unnecessary and duplicated files.
	rm -f "$gemdir"/extensions/*/*/$_gemname-*/mkmf.log
}

sha512sums="
c019ee4eab90ea0f1c603f91e9ca78978a513c9ade97871398ff8812a8b6f219346c267984957e9dd67231ae74d4ad887084e27f2360b38cba31c0db88349be9  ruby-posix-spawn-0.3.15.tar.gz
d22ae3c61aa41681de23e32b77404c06e68e3919af9f98d881fb499788ba9dab52d909c6a5b42fcf77a1ec61c9a2709129150cb50a355365809f5775359e5243  gemspec.patch
d0ab5f3adb0245dc82f499bd87a6a360c13eb86642630d90bfad062adcf24213e2ce00245b296c73a6b0b14294b1f946afd651977a23d85f49fa11b7f5067954  tests-skip-failing.patch
32b61aeec77209b26f7944c796f7f14c0f4c3625d1952ccaa7bc5bc1e0754926e0731551fc7b5bb4196a767a452ae48c7a58deb39ea079654df2191d41220c2f  rakefile-skip-build.patch
89056941ed830b31999aae89c23892c16859f57cbf9535cd645f9705278c25fd9cb81c9be9410ce6d67e99679912e984d809c97fe4e8192b21467bf247fc3d92  gcc14.patch
"
