# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=ruby-rexml
_gemname=rexml
# Keep version in sync with "Bundled gems" (https://stdgems.org) for the
# packaged Ruby version.
pkgver=3.4.1
pkgrel=0
pkgdesc="An XML toolkit for Ruby"
url="https://github.com/ruby/rexml"
arch="noarch"
license="BSD-2-Clause"
depends="ruby"
checkdepends="
	ruby-test-unit
	ruby-test-unit-ruby-core
	"
makedepends="ruby-rdoc"
subpackages="$pkgname-doc"
source="https://github.com/ruby/rexml/archive/v$pkgver/ruby-rexml-$pkgver.tar.gz"
builddir="$srcdir/$_gemname-$pkgver"

[ "$CARCH" = "s390x" ] && options="!check"

# secfixes:
#   3.3.9-r0:
#     - CVE-2024-39908
#     - CVE-2024-41123
#     - CVE-2024-41946
#     - CVE-2024-43398
#     - CVE-2024-49761

build() {
	gem build $_gemname.gemspec
}

check() {
	# test_linear_performance_deep_same_name_attributes - timeouts on ppc64le
	ruby test/run.rb \
		--ignore-name test_linear_performance_deep_same_name_attributes \
		--verbose
}

package() {
	local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')"
	local geminstdir="$gemdir/gems/$_gemname-$pkgver"

	gem install \
		--local \
		--install-dir "$gemdir" \
		--ignore-dependencies \
		--document ri \
		--verbose \
		$_gemname

	# Remove unnecessary files and rubbish...
	cd "$gemdir"
	rm -r cache build_info extensions plugins

	cd "$geminstdir"
	rm -r doc LICENSE* *.md
}

doc() {
	pkgdesc="$pkgdesc (ri docs)"

	amove "$(ruby -e 'puts Gem.default_dir')"/doc
}

sha512sums="
bf1221312c79a1b7601f262486c250696f520e3355a37ee34f245bec975fda0598713d65990852aac9edab6624b4d868730471139cf2ff0894a0c8f85c042aa7  ruby-rexml-3.4.1.tar.gz
"
