From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id D5489138454 for ; Sat, 12 Sep 2015 10:48:22 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 353BEE0884; Sat, 12 Sep 2015 10:48:15 +0000 (UTC) Received: from mail-ig0-f177.google.com (mail-ig0-f177.google.com [209.85.213.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 26B67E087F for ; Sat, 12 Sep 2015 10:48:14 +0000 (UTC) Received: by igbkq10 with SMTP id kq10so58366358igb.0 for ; Sat, 12 Sep 2015 03:48:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:content-type; bh=COq2gRHdqnuSr7AjmqFTGdmdINCtnD+T9o/jZkg1uTU=; b=YcOUvHXn7XjsSmR1v/U1WoyE3EkujfyKXciB4SnYBGE6vi66RU2QLuL7Zx9pUp25xK aB7naDaogGVrMDZMxfQ6fawlKBh1y3JiOeav1njmCoqGBuJ4p62d9m3GVWU3evRz9ctl o0/sakuLCRa9EEOkS9H+MqKN9/BBB3XQKdvs0uoYzaQ1HPEPkIq8OVb9jqMzfak9ok6d 0XKukagrT5oVaAVNaN1bbvAMNd0y8rKVejGK78rvW4xLfp/ZRJwrz4yirD2EiSa5Dcj9 cpenIn3VuCLrW2tmEKQoEmB/o3ppbCoLNg2KCU+89TgFBC7+UQ4P7hFOCS3Zv1fYt69E rTdw== Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 X-Received: by 10.50.29.101 with SMTP id j5mr3268296igh.70.1442054893577; Sat, 12 Sep 2015 03:48:13 -0700 (PDT) Sender: freemanrich@gmail.com Received: by 10.79.103.70 with HTTP; Sat, 12 Sep 2015 03:48:13 -0700 (PDT) In-Reply-To: References: <55EFDDAD.9030502@gentoo.org> <55EFDEC7.1070403@gentoo.org> <55F00BFD.7050804@gentoo.org> <55F12159.3020506@gentoo.org> <55F1439E.1070002@gentoo.org> <55F1C8AB.40005@gentoo.org> <55F1CA38.3050302@gentoo.org> <55F298D0.7020702@gentoo.org> Date: Sat, 12 Sep 2015 06:48:13 -0400 X-Google-Sender-Auth: hiZtiAelHLCjlQjU-HoAhkaAomw Message-ID: Subject: Re: [gentoo-dev] Re: www-client/chromium gtk3 support From: Rich Freeman To: gentoo-dev Content-Type: text/plain; charset=UTF-8 X-Archives-Salt: 13937922-4a5a-4c63-b6dc-bdd8dc9778ba X-Archives-Hash: 76073a067a62a3f1ce8a93a02417f1a3 On Sat, Sep 12, 2015 at 6:00 AM, Duncan <1i5t5.duncan@cox.net> wrote: > > Just bite the bullet and create entire USE flag families such that an > ebuild can choose the flag appropriate to how it actually uses it. AFAIK > this would need EAPI help, for reasons given below, but it should be > doable. > > gui > gui-gtk > gui-gtk-2 > gui-gtk-3 > gui-qt > gui-qt-4 > gui-qt-5 I'm going to have to read the rest of your email about 14 times to fully grok it, but one thing that strikes me about this approach, and perhaps mine as well, is that this assumes that USE=-gui should imply USE="-gtk -qt" or similar. What if qt or gtk is used for more than just the GUI. What if the console version of the program still uses other functions in these toolkits besides window decoration/etc? Granted, I suspect that in such a case turning off any of this stuff is probably not build-time-configurable. If you want the console-only version you'd just pass the appropriate command line option (like deluge's --ui option). However, it is conceivable that you could design a build system so that the GUI requires qt and libfoo, spell check requires qt only, and you could build the program with GUI support, spell check support, or neither. If you built with USE="-gui spellcheck" then you'd want qt enabled but libfoo disabled. That is obviously a highly contrived example and perhaps we don't need to worry about this scenario. However, it does illustrate the general danger of making USE flags a strict hierarchy. A hierarchy like qt/qt4 is probably fairly safe, but when you generalize to gui/qt/qt4 you're making the assumption that qt is only used for guis. But I do like the concept, well, conceptually. -- Rich