From 1f183ca0b2eca997dff46a9cf94c302a972eb98c Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 13 Jul 2020 12:00:30 -0400 Subject: gnu: Add ruby-treetop. * gnu/packages/ruby.scm (ruby-treetop): New variable. --- gnu/packages/ruby.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 15a26ef91e..2105b97d26 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1310,6 +1310,45 @@ (define-public ruby-polyglot (home-page "https://github.com/cjheath/polyglot") (license license:expat))) +(define-public ruby-treetop + (package + (name "ruby-treetop") + (version "1.6.10") + (source + (origin + (method git-fetch) ;no test suite in distributed gem + (uri (git-reference + (url "https://github.com/cjheath/treetop.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dmk94z6ivhrz5hsq68vl5vgydhkz89n394rha1ymddw3rymbfcv")))) + (build-system ruby-build-system) + (arguments + `(#:test-target "spec" + #:phases + (modify-phases %standard-phases + (replace 'replace-git-ls-files + (lambda _ + ;; TODO: Remove after the fix of using 'cut' to better mimic the + ;; git ls-files output is merged in ruby-build-system. + (substitute* "treetop.gemspec" + (("`git ls-files -z`") + "`find . -type f -print0 |sort -z|cut -zc3-`")) + #t))))) + (native-inputs + `(("ruby-activesupport" ,ruby-activesupport) + ("ruby-rr" ,ruby-rr) + ("ruby-rspec" ,ruby-rspec))) + (propagated-inputs + `(("ruby-polyglot" ,ruby-polyglot))) + (synopsis "Ruby-based parsing DSL based on parsing expression grammars") + (description "This package provides a Ruby-based Parsing Expression +Grammar (PEG) parser generator Domain Specific Language (DSL).") + (home-page "https://github.com/cjheath/treetop") + (license license:expat))) + (define-public ruby-ast (package (name "ruby-ast") -- cgit v1.2.3