dev-ruby/rmagick: add 4.2.5

Signed-off-by: Hans de Graaff <graaff@gentoo.org>
This commit is contained in:
Hans de Graaff
2022-04-23 09:19:24 +02:00
parent 51714d06a9
commit a365584cb6
3 changed files with 115 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
DIST rmagick-4.2.2.tar.gz 1984143 BLAKE2B 8b8119a0002c48f3a289f72d4bbea6ac86cbecb287b34ddc14ca126fd2d951a34aefa39d68603dc4c9de674d346e47ef9e3b2c8ed96a5bc081373a4184a3ec40 SHA512 0a6a30a631786ea310d2c8add297abd527588be755d021143d6c64fbb597006aefef859c374604f8d26b0f8b1f6cd8a5f1cdd6489772ee713c71681f3980c7fd
DIST rmagick-4.2.3.tar.gz 1984440 BLAKE2B 32dea4b8ed7d2385537ac5d67d48e3431e3f398c146b01308cc44ab6b4ad5e851292c22e373307bd2193a299f94a2a2f91b0a7d534825990cc5e1458a9efff7d SHA512 3465afc5c9a93e45511463b1f7eda00fd243f17041cf52b5cb54ceb05ff22cb6e23ea2b15d080ae31bca5daebdd92c28364ada73ea0cf6ea56cb1ec5fe1aa184
DIST rmagick-4.2.4.tar.gz 1984584 BLAKE2B 8f3a737b851e16e16b6b010ea9f76ae14715661630eb877ca4204a71d67603967e5ca4eebdb9d8dea4caa880d049b78f525b6596feea9f866d7396fc550fb410 SHA512 89d5b616b6ce5187ac31356c44abea23aab0054e08ed00d390e3c74d1cdca421bc1ceb6708e5434858f3194756bf14b445d1331216480be5f8c072f65a889198
DIST rmagick-4.2.5.tar.gz 1984865 BLAKE2B 5a96967da0583ca6d16252fd3e93162cc31b4b125875e16334436c2ec54cb9b739d4a0e0e08547a6218312ce844b3b78cca5f63cf4b81ae3f15abbf9816ceac8 SHA512 55835e43bf583c6c53431849caa54900902d0d63f21c7f70b0bdbcfbe69d16a71d433d1d9b949bf68ed36f6fc7f18ae512f0e96c26ff1c63a68bbc83446b52d8

View File

@@ -0,0 +1,30 @@
commit fef59858eaba843b876c5b5f253f623ddb4d0f1c
Author: Hans de Graaff <hans@degraaff.org>
Date: Sat Apr 23 08:54:42 2022 +0200
Guard against an empty rpath
Some ImageMagick installations (e.g. on Gentoo Linux when installed
with the package manager) don't return any -L options in pkg-config.
Including an empty rpath is a security risk and should be avoided.
Fixes #1332
diff --git a/ext/RMagick/extconf.rb b/ext/RMagick/extconf.rb
index 7b4ce1ad..3eef6cbd 100644
--- a/ext/RMagick/extconf.rb
+++ b/ext/RMagick/extconf.rb
@@ -69,11 +69,12 @@ module RMagick
libdir = `pkg-config --libs-only-L #{$magick_package}`.chomp.sub('-L', '')
ldflags = "#{ENV['LDFLAGS']} " + `pkg-config --libs #{$magick_package}`.chomp
+ rpath = libdir.empty? ? '' : "-Wl,-rpath,#{libdir}"
# Save flags
$CPPFLAGS = "#{ENV['CPPFLAGS']} " + `pkg-config --cflags #{$magick_package}`.chomp
$LOCAL_LIBS = "#{ENV['LIBS']} " + `pkg-config --libs #{$magick_package}`.chomp
- $LDFLAGS = "#{ldflags} -Wl,-rpath,#{libdir}"
+ $LDFLAGS = "#{ldflags} #{rpath}"
unless try_link("int main() { }")
# if linker does not recognizes '-Wl,-rpath,somewhere' option, it revert to original option

View File

@@ -0,0 +1,84 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
USE_RUBY="ruby26 ruby27 ruby30 ruby31"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
RUBY_FAKEGEM_GEMSPEC="rmagick.gemspec"
RUBY_FAKEGEM_EXTENSIONS=(ext/RMagick/extconf.rb)
MY_PV=RMagick_${PV//\./-}
inherit ruby-fakegem
DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
HOMEPAGE="https://github.com/rmagick/rmagick"
SRC_URI="https://github.com/rmagick/rmagick/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
RUBY_S="rmagick-${MY_PV}"
LICENSE="Artistic"
SLOT="4"
KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
IUSE="doc"
RDEPEND+=" >=media-gfx/imagemagick-6.9.0:="
DEPEND+=" test? ( >=media-gfx/imagemagick-7.1.0:=[jpeg,lqr,lcms,postscript,tiff,webp] )"
PATCHES=( "${FILESDIR}/${P}-empty-rpath.patch" )
all_ruby_prepare() {
# Avoid unused dependency on rake-compiler. This also avoids an
# extra compile during tests.
sed -i -e '/extensiontask/ s:^:#:' \
-e '/ExtensionTask/,/end/ s:^:#:' \
-e '/compile/ s:^:#:' Rakefile || die
sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
# Squelch harmless warning about imagemagick installation.
sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
# Reading PDFs is not allowed by the default Gentoo security policy for imagemagick
#sed -i -e '/can read PDF file/askip "Not allowed by Gentoo security policy"' spec/rmagick/image/read_spec.rb || die
# Update version number hardcoded in tests
sed -i -e 's/"7.0"/"7.1"/' spec/rmagick/image/channel_mean_spec.rb || die
# Create directory used for a test
mkdir tmp
}
each_ruby_test() {
# Borrowed from media-gfx/gscan2pdf
# Needed to avoid test failures on e.g. ppc, bug #815856
# (Unclear why it doesn't manifest on amd64 here at least)
local confdir="${HOME}/.config/ImageMagick"
mkdir -p "${confdir}" || die
cat > "${confdir}/policy.xml" <<-EOT || die
<policymap>
<policy domain="coder" rights="read|write" pattern="PDF" />
<policy domain="coder" rights="read" pattern="PS" />
</policymap>
EOT
RSPEC_VERSION="3" ruby-ng_rspec
}
all_ruby_install() {
all_fakegem_install
docinto examples
dodoc examples/*
if use doc ; then
docinto .
dodoc -r doc
fi
}