summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Graaff <graaff@gentoo.org>2020-12-28 08:42:17 +0100
committerHans de Graaff <graaff@gentoo.org>2020-12-28 08:46:46 +0100
commitd9591e30c5a5afc8908de2cf91d76740ee5c9ab4 (patch)
treec032f535a2ad93c092d6e279a2c2a0a142fd8ea6 /dev-ruby/json
parentdev-ruby/did_you_mean: add ruby30 (diff)
downloadgentoo-d9591e30c5a5afc8908de2cf91d76740ee5c9ab4.tar.gz
gentoo-d9591e30c5a5afc8908de2cf91d76740ee5c9ab4.tar.bz2
gentoo-d9591e30c5a5afc8908de2cf91d76740ee5c9ab4.zip
dev-ruby/json: add 2.5.1
Package-Manager: Portage-3.0.9, Repoman-3.0.2 Signed-off-by: Hans de Graaff <graaff@gentoo.org>
Diffstat (limited to 'dev-ruby/json')
-rw-r--r--dev-ruby/json/Manifest1
-rw-r--r--dev-ruby/json/json-2.5.1.ebuild68
2 files changed, 69 insertions, 0 deletions
diff --git a/dev-ruby/json/Manifest b/dev-ruby/json/Manifest
index 158c82c17ff2..f1761ddf79a6 100644
--- a/dev-ruby/json/Manifest
+++ b/dev-ruby/json/Manifest
@@ -1,2 +1,3 @@
DIST json-2.3.0.gem 114176 BLAKE2B 329f1305a0cae3d44c74cc7475c7340e86b8447d5e4ffdd5854620669ee4ef5bba0ed7dbc617b0beffb7bfd8b3d79d46ce26feef37685413a4a5a9c230d0ce0c SHA512 9086a64b664f2d774439c0c9f10c2c1cd897684050eb60f8e3ad9256e0b9541deec3bd22fab0bdcf66e3d5bc795720c6923d514b6edb824c9962fc22f162b332
DIST json-2.3.1.gem 118784 BLAKE2B 6852f5d1733fd5d596b44d095c37d11a129b02fc61dc81afa90aef3623eefdb5515f6755dce42f055954baf2ac45e87620940ccd7c2c839501945923dbe62d18 SHA512 a9a0c54ac1faacc412ad708b630c8bad8c6f99db6862e8fc80c46207f0f0972433fbfe51d0c93a5d91b91c59b1fef5ad8e64e36cc49e32b3e51ff390a380a2a9
+DIST json-2.5.1.tar.gz 131183 BLAKE2B 2ccdf5921ef476b66cb1dbf72cc01763636c82b0eb5d0a5cfc029e14177c7c6766464e7852b11c2424db401f5b931cb64c01d3952929236c9979378a7928ea59 SHA512 4df7ec9b86692376e89c2019c2c1ab3ae9af28fb4742864acc6f985c0551fc10795742cc1124d6435e820617c00d4c5f4aa6c83b21d2fff43ed05cd9d0a89087
diff --git a/dev-ruby/json/json-2.5.1.ebuild b/dev-ruby/json/json-2.5.1.ebuild
new file mode 100644
index 000000000000..5fae8444682d
--- /dev/null
+++ b/dev-ruby/json/json-2.5.1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby25 ruby26 ruby27 ruby30"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="json.gemspec"
+
+inherit multilib ruby-fakegem
+
+DESCRIPTION="A JSON implementation as a Ruby extension"
+HOMEPAGE="https://github.com/flori/json"
+SRC_URI="https://github.com/flori/json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Ruby"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+SLOT="2"
+IUSE=""
+
+RDEPEND="${RDEPEND}"
+DEPEND="${DEPEND}
+ dev-util/ragel"
+
+ruby_add_bdepend "dev-ruby/rake
+ doc? ( dev-ruby/rdoc )
+ test? ( dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ # Avoid building the extension twice!
+ # And use rdoc instead of sdoc which we don't have packaged
+ # And don't call git to list files. We're using the pregenerated spec anyway.
+ sed -i \
+ -e '/task :test/ s|:compile,||' \
+ -e 's| => :clean||' \
+ -e 's|sdoc|rdoc|' \
+ -e 's|`git ls-files`|""|' \
+ Rakefile || die "rakefile fix failed"
+
+ # Remove hardcoded and broken -O setting.
+ sed -i -e '/^ \(if\|unless\)/,/^ end/ s:^:#:' \
+ -e '/^unless/,/^end/ s:^:#:' ext/json/ext/*/extconf.rb || die
+
+ # Avoid setting gem since it will not be available yet when installing
+ sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
+}
+
+each_ruby_configure() {
+ for ext in parser generator ; do
+ ${RUBY} -Cext/json/ext/${ext} extconf.rb || die
+ done
+}
+
+each_ruby_compile() {
+ for ext in parser generator ; do
+ emake V=1 -Cext/json/ext/${ext}
+ cp ext/json/ext/${ext}/${ext}$(get_modname) ext/json/ext/ || die
+ done
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ ruby_fakegem_newins ext/json/ext/generator$(get_modname) lib/json/ext/generator$(get_modname)
+ ruby_fakegem_newins ext/json/ext/parser$(get_modname) lib/json/ext/parser$(get_modname)
+}