public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Ian Stakenvicius" <axs@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/mozilla:master commit in: eclass/
Date: Mon, 28 Mar 2016 14:57:54 +0000 (UTC)	[thread overview]
Message-ID: <1458316725.73b3f5a628ecd07aaf23b43695049d94598ee268.axs@gentoo> (raw)

commit:     73b3f5a628ecd07aaf23b43695049d94598ee268
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 18 15:58:45 2016 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Fri Mar 18 15:58:45 2016 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=73b3f5a6

mozconfig-v6.46.eclass adjustments

- dropped gstreamer options as it has been removed upstream
- added logic to support both gtk3-default and gtk2-default configurations:
	- setting MOZCONFIG_OPTIONAL_GTK3 adds a 'gtk3' use flag which can be
	  enabled or disabled to control the use of cairo-gtk3 toolkit, and cairo-gtk2
	  is used otherwose
	- setting MOZCONFIG_OPTIONAL_GTK2ONLY adds a 'force-gtk2' use flag which
	  can be enabled or disabled to control the use of cairo-gtk2 toolkit, and
	  cairo-gtk3 is used otherwise.

The primary reason for this is to make the gentoo gnome/gtk devs happy, as they don't like
gtk2/gtk3 use flags, and to better enforce the default in USE="-*" user profile situations.

 eclass/mozconfig-v6.46.eclass | 58 +++++++++++++++++++++++++++----------------
 1 file changed, 36 insertions(+), 22 deletions(-)

diff --git a/eclass/mozconfig-v6.46.eclass b/eclass/mozconfig-v6.46.eclass
index a25e5a5..9400121 100644
--- a/eclass/mozconfig-v6.46.eclass
+++ b/eclass/mozconfig-v6.46.eclass
@@ -59,6 +59,19 @@ inherit flag-o-matic toolchain-funcs mozcoreconf-v3
 # Set the variable to "enabled" if the use flag should be enabled by default.
 # Set the variable to any value if the use flag should exist but not be default-enabled.
 
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_GTK2ONLY
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild can provide
+# optional gtk2-only support via IUSE="force-gtk2".
+#
+# Note that this option conflicts directly with MOZCONFIG_OPTIONAL_GTK3, both
+# variables cannot be set at the same time and this variable will be ignored if
+# MOZCONFIG_OPTIONAL_GTK3 is set.
+#
+# Leave the variable UNSET if gtk2-only support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
 # @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_QT5
 # @DESCRIPTION:
 # Set this variable before the inherit line, when an ebuild can provide
@@ -70,7 +83,7 @@ inherit flag-o-matic toolchain-funcs mozcoreconf-v3
 # Set the variable to any value if the use flag should exist but not be default-enabled.
 
 # use-flags common among all mozilla ebuilds
-IUSE="${IUSE} dbus debug ffmpeg +gstreamer gstreamer-0 +jemalloc3 neon pulseaudio selinux startup-notification system-cairo
+IUSE="${IUSE} dbus debug +ffmpeg +jemalloc3 neon pulseaudio selinux startup-notification system-cairo
 	system-icu system-jpeg system-libevent system-sqlite system-libvpx"
 
 # some notes on deps:
@@ -98,16 +111,6 @@ RDEPEND=">=app-text/hunspell-1.2
 	>=sys-libs/zlib-1.2.3
 	>=virtual/libffi-3.0.10
 	ffmpeg? ( virtual/ffmpeg )
-	gstreamer? (
-		>=media-libs/gstreamer-1.4.5:1.0
-		>=media-libs/gst-plugins-base-1.4.5:1.0
-		>=media-libs/gst-plugins-good-1.4.5:1.0
-		>=media-plugins/gst-plugins-libav-1.4.5:1.0
-	)
-	gstreamer-0? (
-		>=media-libs/gstreamer-0.10.25:0.10
-		media-plugins/gst-plugins-meta:0.10[ffmpeg]
-	)
 	x11-libs/libX11
 	x11-libs/libXcomposite
 	x11-libs/libXdamage
@@ -124,6 +127,7 @@ RDEPEND=">=app-text/hunspell-1.2
 "
 
 if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
+	MOZCONFIG_OPTIONAL_GTK2ONLY=
 	if [[ ${MOZCONFIG_OPTIONAL_GTK3} = "enabled" ]]; then
 		IUSE+=" +gtk3"
 	else
@@ -131,6 +135,14 @@ if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
 	fi
 	RDEPEND+="
 	gtk3? ( >=x11-libs/gtk+-3.4.0:3 )"
+elif [[ -n ${MOZCONFIG_OPTIONAL_GTK2ONLY} ]]; then
+	if [[ ${MOZCONFIG_OPTIONAL_GTK2ONLY} = "enabled" ]]; then
+		IUSE+=" +force-gtk2"
+	else
+		IUSE+=" force-gtk2"
+	fi
+	RDEPEND+="
+	!force-gtk2? ( >=x11-libs/gtk+-3.4.0:3 )"
 fi
 if [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]]; then
 	inherit qmake-utils
@@ -179,13 +191,17 @@ DEPEND="app-arch/zip
 RDEPEND+="
 	selinux? ( sec-policy/selinux-mozilla )"
 
-# only one of gstreamer and gstreamer-0 can be enabled at a time, so set REQUIRED_USE to signify this
-REQUIRED_USE="?? ( gstreamer gstreamer-0 )"
+# ensure REQUIRED_USE is set just in case += fails otherwise
+: ${REQUIRED_USE:=""}
 
 # only one of gtk3 or qt5 should be permitted to be selected, since only one will be used.
 [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]] && [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]] && \
 	REQUIRED_USE+=" ?? ( gtk3 qt5 )"
 
+# only one of force-gtk2 or qt5 should be permitted to be selected, since only one will be used.
+[[ -n ${MOZCONFIG_OPTIONAL_GTK2ONLY} ]] && [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]] && \
+	REQUIRED_USE+=" ?? ( force-gtk2 qt5 )"
+
 # @FUNCTION: mozconfig_config
 # @DESCRIPTION:
 # Set common configure options for mozilla packages.
@@ -280,6 +296,13 @@ mozconfig_config() {
 			toolkit_comment="gtk3 use flag"
 		fi
 	fi
+	if [[ -n ${MOZCONFIG_OPTIONAL_GTK2ONLY} ]]; then
+		if ! use force-gtk2 ; then
+			toolkit="cairo-gtk3"
+		else
+			toolkit_comment="force-gtk2 use flag"
+		fi
+	fi
 	if [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]]; then
 		if use qt5; then
 			toolkit="cairo-qt"
@@ -310,15 +333,6 @@ mozconfig_config() {
 	mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
 
 	use ffmpeg || mozconfig_annotate '-ffmpeg' --disable-ffmpeg
-	if use gstreamer ; then
-		use ffmpeg && einfo "${PN} will not use ffmpeg unless gstreamer:1.0 is not available at runtime"
-		mozconfig_annotate '+gstreamer' --enable-gstreamer=1.0
-	elif use gstreamer-0 ; then
-		use ffmpeg && einfo "${PN} will not use ffmpeg unless gstreamer:0.10 is not available at runtime"
-		mozconfig_annotate '+gstreamer-0' --enable-gstreamer=0.10
-	else
-		mozconfig_annotate '' --disable-gstreamer
-	fi
 	mozconfig_use_enable pulseaudio
 
 	mozconfig_use_enable system-cairo


             reply	other threads:[~2016-03-28 14:58 UTC|newest]

Thread overview: 123+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-28 14:57 Ian Stakenvicius [this message]
  -- strict thread matches above, loose matches on Subject: below --
2019-03-20 17:26 [gentoo-commits] proj/mozilla:master commit in: eclass/ Jory Pratt
2018-08-16 16:48 Ian Stakenvicius
2018-08-15 21:11 Ian Stakenvicius
2018-08-15 19:30 Ian Stakenvicius
2018-08-15 17:18 Ian Stakenvicius
2018-06-18  4:41 Jory Pratt
2018-05-22 13:44 Jory Pratt
2018-05-22  1:19 Jory Pratt
2018-05-13  9:09 Lars Wendler
2018-02-19 12:25 Jory Pratt
2018-01-31 15:35 Ian Stakenvicius
2018-01-29  5:12 Ian Stakenvicius
2018-01-26  4:28 Ian Stakenvicius
2018-01-26  4:28 Ian Stakenvicius
2017-12-21 14:16 Jory Pratt
2017-11-14 16:18 Ian Stakenvicius
2017-10-26  8:52 Lars Wendler
2017-09-28 17:07 Ian Stakenvicius
2017-09-10 21:56 Jory Pratt
2017-08-29  0:11 Jory Pratt
2017-08-22 14:57 Lars Wendler
2017-08-17  9:31 Lars Wendler
2017-07-25  1:58 Ian Stakenvicius
2017-06-06 18:01 Jory Pratt
2017-05-31 20:38 Jory Pratt
2017-05-31 20:37 Jory Pratt
2017-05-31 20:37 Jory Pratt
2017-05-31 20:19 Jory Pratt
2017-05-04 17:46 Ian Stakenvicius
2017-04-28 13:58 Ian Stakenvicius
2017-04-19 21:00 Ian Stakenvicius
2017-04-19 21:00 Ian Stakenvicius
2017-04-19 21:00 Ian Stakenvicius
2017-04-13 17:34 Ian Stakenvicius
2017-04-04 19:42 Ian Stakenvicius
2017-04-04 15:02 Ian Stakenvicius
2017-03-20 21:46 Andrew Savchenko
2017-03-20 19:22 Andrew Savchenko
2017-03-20 17:31 Andrew Savchenko
2017-02-06  2:30 Jory Pratt
2017-02-04 18:30 Jory Pratt
2017-02-03  3:41 Jory Pratt
2017-02-02  3:02 Jory Pratt
2016-12-01  8:55 Lars Wendler
2016-11-29 17:17 Lars Wendler
2016-10-16 21:49 Jory Pratt
2016-10-09 17:59 Jory Pratt
2016-10-09 14:35 Ian Stakenvicius
2016-09-08 22:18 Ian Stakenvicius
2016-09-04 23:31 Jory Pratt
2016-09-04 23:31 Jory Pratt
2016-08-04 16:09 Ian Stakenvicius
2016-07-25 21:27 Ian Stakenvicius
2016-07-25 20:14 Ian Stakenvicius
2016-07-25 20:12 Ian Stakenvicius
2016-07-12 19:45 Ian Stakenvicius
2016-07-11 18:05 Ian Stakenvicius
2016-07-09  3:25 Ian Stakenvicius
2016-07-09  0:57 Ian Stakenvicius
2016-07-05  1:15 Ian Stakenvicius
2016-04-28  5:50 Lars Wendler
2016-04-27 21:27 Ian Stakenvicius
2016-03-28 14:57 Ian Stakenvicius
2016-02-04 16:39 Ian Stakenvicius
2016-01-11  1:25 Jory Pratt
2016-01-11  1:19 Jory Pratt
2016-01-11  1:19 Jory Pratt
2016-01-04 21:09 Ian Stakenvicius
2016-01-01 22:29 Jory Pratt
2015-12-31 22:05 Jory Pratt
2015-11-27 19:24 [gentoo-commits] proj/mozilla:crossdev " Ian Stakenvicius
2015-11-27 19:25 ` [gentoo-commits] proj/mozilla:master " Ian Stakenvicius
2015-11-10  8:33 Lars Wendler
2015-11-09 21:55 Jory Pratt
2015-11-09 21:53 Jory Pratt
2015-11-09 19:12 Jory Pratt
2015-10-30 18:41 Jory Pratt
2015-08-14 16:24 Ian Stakenvicius
2015-07-17 18:27 Ian Stakenvicius
2015-07-17 17:34 Ian Stakenvicius
2015-07-16 17:48 Ian Stakenvicius
2015-07-16 16:56 Ian Stakenvicius
2015-07-16 16:22 Ian Stakenvicius
2015-07-16 16:15 Ian Stakenvicius
2015-07-16 15:41 Ian Stakenvicius
2015-07-14 22:16 Ian Stakenvicius
2015-07-14 22:16 Ian Stakenvicius
2015-06-02 19:48 Ian Stakenvicius
2015-03-10 14:07 Ian Stakenvicius
2014-11-06 14:46 Ian Stakenvicius
2014-10-27 19:12 Ian Stakenvicius
2014-10-16 21:18 Ian Stakenvicius
2014-08-25 19:25 Ian Stakenvicius
2013-10-29 13:39 Jory Pratt
2013-10-26  2:30 Jory Pratt
2013-08-28 15:24 Ian Stakenvicius
2013-08-26 14:40 Jory Pratt
2013-05-27 21:52 Jory Pratt
2013-05-22 23:37 Jory Pratt
2013-05-22 13:32 Lars Wendler
2013-04-10  2:01 Jory Pratt
2013-03-25 13:10 Jory Pratt
2013-03-24 19:09 Jory Pratt
2013-03-10  0:14 Jory Pratt
2012-12-03 15:45 Lars Wendler
2012-09-09 16:23 Jory Pratt
2012-08-02  1:59 Jory Pratt
2012-07-18  0:17 Jory Pratt
2012-03-26  3:40 Jory Pratt
2012-03-04 14:17 Jory Pratt
2012-02-28  5:03 Jory Pratt
2012-02-04  6:10 Nirbheek Chauhan
2012-02-01 20:54 Nirbheek Chauhan
2012-01-26 14:58 Nirbheek Chauhan
2011-11-21 16:34 Jory Pratt
2011-11-21 16:33 Jory Pratt
2011-11-21 15:49 Jory Pratt
2011-11-16 14:53 Jory Pratt
2011-03-17 13:33 Jory Pratt
2011-03-16 13:41 Jory Pratt
2011-03-16  4:27 Jory Pratt
2011-03-14  6:58 Nirbheek Chauhan
2011-03-09  2:30 Mounir Lamouri

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1458316725.73b3f5a628ecd07aaf23b43695049d94598ee268.axs@gentoo \
    --to=axs@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox