summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ruby/racc/racc-1.7.0.ebuild')
-rw-r--r--dev-ruby/racc/racc-1.7.0.ebuild61
1 files changed, 61 insertions, 0 deletions
diff --git a/dev-ruby/racc/racc-1.7.0.ebuild b/dev-ruby/racc/racc-1.7.0.ebuild
new file mode 100644
index 000000000000..a537eab8aa9f
--- /dev/null
+++ b/dev-ruby/racc/racc-1.7.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc README.ja.rdoc TODO ChangeLog"
+
+RUBY_FAKEGEM_GEMSPEC="racc.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/racc/cparse/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/racc/cparse"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A LALR(1) parser generator for Ruby"
+HOMEPAGE="https://github.com/tenderlove/racc"
+SRC_URI="https://github.com/tenderlove/racc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "dev-ruby/rake
+ test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/, :isolate//' Rakefile || die
+ sed -i -e '/bundler/ s:^:#:' -e '/rdoc/,/^end/ s:^:#:' Rakefile || die
+
+ # Avoid depending on rake-compiler since we don't use it to compile
+ # the extension.
+ sed -i -e '/rake-compiler/ s:^:#:' -e '/extensiontask/ s:^:#:' Rakefile || die
+ sed -i -e '/ExtensionTask/,/^ end/ s:^:#:' Rakefile || die
+
+ # ...which means we need to generate the parser file here
+ for ruby in $(ruby_get_use_implementations) ; do
+ if has_version -b "virtual/rubygems[ruby_targets_${ruby}(-)]" &&
+ has_version -b "dev-ruby/rake[ruby_targets_${ruby}(-)]" ; then
+ ${ruby} -S rake lib/racc/parser-text.rb || die
+ break
+ fi
+ done
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r doc
+
+ docinto examples
+ dodoc -r sample
+}