# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
setvar pkgname = 'ruby-nokogiri'
setvar _gemname = ${pkgname#ruby-}
setvar pkgver = '1.8.1'
setvar pkgrel = '0'
setvar pkgdesc = ""An HTML, XML, SAX, and Reader parser""
setvar url = ""http://nokogiri.org/""
setvar arch = ""all""
setvar license = ""MIT""
setvar depends = ""ruby ruby-mini_portile2""
setvar makedepends = ""ruby-dev libxml2-dev libxslt-dev""
setvar checkdepends = ""ruby-minitest""
setvar source = ""https://rubygems.org/downloads/$_gemname-$pkgver.gem""
setvar builddir = ""$srcdir/$_gemname-$pkgver""
setvar options = ""!check""  # FIXME: some tests fails due to encoding issues

proc unpack {
	default_unpack

	cd $srcdir
	gem unpack $_gemname-$pkgver.gem
}

proc prepare {
	default_prepare

	cd $builddir

	# Generate gemspec (there's no gemspec in the source).
	gem specification -l --ruby "$srcdir"/$_gemname-$pkgver.gem \
		> "$builddir"/$_gemname.gemspec

	# Remove bundled external libraries etc.
	sed -i \
		-e 's|, "ports/archives/[^"][^"]*"||g' \
		-e 's|, "ports/patches/[^"][^"]*"||g' \
		-e '\@mini_portile@d' \
		$_gemname.gemspec
}

proc build {
	cd $builddir

	gem build $_gemname.gemspec
	gem install \
		--local \
		--install-dir dist \
		--ignore-dependencies \
		--no-document \
		--verbose \
		$_gemname-$pkgver.gem -- \
			--use-system-libraries
}

proc check {
	cd "$builddir"/dist/gems/$_gemname-$pkgver

	# Note: This is copied from Fedora package.
	export LANG=ja_JP.UTF-8
	ruby -I.:lib:test:ext \
		-e 'require "test/helper"' \
		-e 'Dir.glob("test/**/test_*.rb") {|f| require f }'
}

proc package {
	local gemdir="$pkgdir/$(ruby -rubygems -e 'puts Gem.default_dir')"

	cd "$builddir"/dist

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

	cd "$gemdir"/gems/$_gemname-$pkgver

	# Remove unnecessary files and rubbish...
	rm -r ext/ patches/ suppressions/ tasks/ test/ \
		build_all test_all Rakefile .[a-z]* *.md *.rdoc *.txt *.yml || true
}

setvar sha512sums = ""b74e423e295265bd34960ffcfabfad5cc6048ca9c524e9dbf3aff652dab1b5b41470d1161f009bccd61b3acd16cad82b466c2e36e2ed65801f87b88b7c047b93  nokogiri-1.8.1.gem""