mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-11-06 17:47:07 -08:00
virtual/imagemagick-tools: Add virtual for media-gfx/{image,graphics}magick
* Packages that do **not** link to either library and just consume the
runtime command-line tools of either package should depend on the virtual
in general. This reduces the complexity of the depgraph and makes central
USE flag handling much easier.
* Packages that can link to either imagemagick or graphicsmagick need more
delicate handling in order to be usable with subslots.
1) Packages that **require** either imagemagick or graphicsmagick should
use USE="graphicsmagick" to differentiate which one to use by specifying
!graphicsmagick? ( media-gfx/imagemagick:= )
graphicsmagick? ( media-gfx/graphicsmagick:= )
2) Packages that **may** use either imagemagick or graphicsmagick, but don't
**require** it, should additionally add USE="imagemagick" and specify
imagemagick? (
!graphicsmagick? ( media-gfx/imagemagick:= )
graphicsmagick? ( media-gfx/graphicsmagick:= )
)
So that the semantics become:
USE="imagemagick" = "I want to build with optional imagemagick or graphicsmagick support"
USE="-imagemagick" = "I do NOT want optional support for imagemagick and/or graphicsmagick"
USE="-graphicsmagick" = "I want to build against media-gfx/imagemagick"
USE="graphicsmagick" = "I want to build against media-gfx/graphicsmagick"
This avoids package.use pollution due to setting REQUIRED_USE.
Bug: https://bugs.gentoo.org/show_bug.cgi?id=314431
Package-Manager: Portage-2.3.3, Repoman-2.3.1
Closes: https://github.com/gentoo/gentoo/pull/3907
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
DESCRIPTION="Virtual for imagemagick command line tools"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86"
|
||||
IUSE="jpeg perl png svg tiff"
|
||||
|
||||
# This virtual is to be used **ONLY** for depending on the runtime
|
||||
# tools of imagemagick/graphicsmagick. It should and cannot be used
|
||||
# for linking against, as subslots are not transitively passed on.
|
||||
# For linking, you will need to depend on the respective libraries
|
||||
# in all consuming ebuilds and use appropriate sub-slot operators.
|
||||
# See also: https://bugs.gentoo.org/show_bug.cgi?id=314431
|
||||
RDEPEND="
|
||||
|| (
|
||||
media-gfx/imagemagick[jpeg?,perl?,png?,svg?,tiff?]
|
||||
media-gfx/graphicsmagick[imagemagick,jpeg?,perl?,png?,svg?,tiff?]
|
||||
)"
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>graphics@gentoo.org</email>
|
||||
<name>Gentoo Graphics Project</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
||||
Reference in New Issue
Block a user