diff options
| author | Hans de Graaff <graaff@gentoo.org> | 2025-06-19 15:28:58 +0200 |
|---|---|---|
| committer | Hans de Graaff <graaff@gentoo.org> | 2025-06-19 15:28:58 +0200 |
| commit | 49b3c27b082783dacda247cf01c69ad8e49fbed7 (patch) | |
| tree | 12e1a91171ef7a9a19bfb3418f82d948f7f31e90 /dev-ruby | |
| parent | 110c4baaf60b8a1a11871d05b3d62264094bd56d (diff) | |
| download | gentoo-49b3c27b082783dacda247cf01c69ad8e49fbed7.tar.gz gentoo-49b3c27b082783dacda247cf01c69ad8e49fbed7.tar.bz2 gentoo-49b3c27b082783dacda247cf01c69ad8e49fbed7.zip | |
dev-ruby/asciidoctor-diagram: add 2.3.2
Signed-off-by: Hans de Graaff <graaff@gentoo.org>
Diffstat (limited to 'dev-ruby')
| -rw-r--r-- | dev-ruby/asciidoctor-diagram/Manifest | 1 | ||||
| -rw-r--r-- | dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.3.2.ebuild | 121 |
2 files changed, 122 insertions, 0 deletions
diff --git a/dev-ruby/asciidoctor-diagram/Manifest b/dev-ruby/asciidoctor-diagram/Manifest index 89506e10a8a2..fa5813765829 100644 --- a/dev-ruby/asciidoctor-diagram/Manifest +++ b/dev-ruby/asciidoctor-diagram/Manifest @@ -1 +1,2 @@ DIST asciidoctor-diagram-2.2.14.tar.gz 14085153 BLAKE2B b62fbbc0ba5a5c53a92b1c9cd7d20047a0e6f4ec71ff7daeab379c3be2546b105b900e7fa6c49f00f6320de2087115d5944b9df9be443ad60cc0d330d5b12234 SHA512 8e343726788e61fa6846d756911f3df9ef276f706ec2668e7d74fc7b5b2cf3c8984f1d5031af5d8d2c55260f3bebf981d0bcd5dd1c032e504b32bee167cb626e +DIST asciidoctor-diagram-2.3.2.tar.gz 24298535 BLAKE2B 3651fc0d79ff97d4cb33c09ce0968d5a95f2963bd1b8f3264892fc253f3468c52394cc65e93512271514fc2437daff560d294ba6a16cb4a9ba2d2cbf3e1a8a76 SHA512 135032af75e27a76a293230354ff99405f2fa4b5e8d1418c51d924028fffd54ea5b7d6dcd919097d7964cd82bafef155c2afcea53429f76b0c9fa5e5999ca586 diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.3.2.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.3.2.ebuild new file mode 100644 index 000000000000..ea4884f3fbb3 --- /dev/null +++ b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.3.2.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33" + +RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams" +HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram" +SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +# Supported backends dictionary: <backend-name> <dependencies> <removal-function> +# backend-name: The name of the USE flag, a gem spec file in ./spec, a +# directory in ./lib/asciidoctor-diagram/, and a require directive in +# ./lib/asciidoctor.rb which will be removed if the former is unset. +# dependencies: Dependencies for RDEPEND if the USE flag is set, and for +# DEPEND if the "test" USE flag is set. +# removal-function: Additional commands to evaluate, if the USE flag is unset. +# +# NB: Do not implicitly use functions following a naming scheme instead +# of an explicit <removal-function> to prevent accidental or malicious +# injection from functions exported in the parent environment. +backend_dict_stride=3 +backends=( + "barcode" "dev-ruby/rqrcode dev-ruby/barby[qrcode]" "" + "ditaa" "media-gfx/ditaa" "remove_ditaa" + "gnuplot" "sci-visualization/gnuplot" "" + "graphviz" "media-gfx/graphviz" "" + "lilypond" "media-sound/lilypond" "" + "meme" "media-gfx/imagemagick[png]" "" + "mscgen" "media-gfx/mscgen[png]" "" + "plantuml" "media-gfx/plantuml" "remove_plantuml" + "tikz" "dev-tex/pgf media-gfx/pdf2svg" "" +) + +remove_plantuml() { + rm -f "spec/salt.rb" + sed -i "/\\/salt'/d" "lib/asciidoctor-diagram.rb" + sed -i "/plantuml/d" "asciidoctor-diagram.gemspec" +} + +remove_ditaa() { + sed -i "/ditaa/d" "asciidoctor-diagram.gemspec" +} + +IUSE="" +DEPEND+="test? (" + +i=0 +while (( i < ${#backends[@]} )) +do + backend="${backends[i]}" + deps="${backends[i+1]}" + + IUSE+=" $backend" + RDEPEND+=" $backend? ( $deps )" + DEPEND+=" $deps" + + ((i+=backend_dict_stride)) +done + +DEPEND+=" )" + +ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.7 <dev-ruby/asciidoctor-3 dev-ruby/rexml" + +all_ruby_prepare() { + rm Gemfile || die + sed -e '/c.formatter/ s:^:#:' \ + -e '/logger.*DEBUG/ s:^:#:' \ + -i spec/test_helper_methods.rb || die + + # Delete everything related to unsupported backends. Obtain list of backends from spec/ + for spec in spec/*_spec.rb + do + backend="${spec##spec/}" + backend="${backend%%_spec.rb}" + + backend_index=0 + + get_backend_index() { + local i=0 + while (( i < ${#backends[@]} )) + do + if [[ "${backends[i]}" == "$backend" ]] + then + echo "$i" + return 1 + fi + ((i+=backend_dict_stride)) + done + } + + if backend_index="$(get_backend_index)" || ! use "$backend" + then + rm -f "spec/${backend}_spec.rb" + rm -Rf "lib/asciidoctor-diagram/"{"$backend.rb","$backend"} + sed -i "/\\/$backend'/d" "lib/asciidoctor-diagram.rb" + removal="${backends[backend_index+2]}" + if [[ "$removal" ]] + then + "$removal" + fi + fi + done +} + +all_ruby_install() { + all_fakegem_install +} |
