From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 06C91138334 for ; Sun, 17 Jun 2018 12:20:05 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 21647E0978; Sun, 17 Jun 2018 12:19:58 +0000 (UTC) Received: from smarthost03b.mail.zen.net.uk (smarthost03b.mail.zen.net.uk [212.23.1.21]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 925D6E08F7 for ; Sun, 17 Jun 2018 12:19:57 +0000 (UTC) Received: from [62.3.120.142] (helo=NeddySeagoon_Static) by smarthost03b.mail.zen.net.uk with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.80) (envelope-from ) id 1fUWex-0006St-Ol for gentoo-dev@lists.gentoo.org; Sun, 17 Jun 2018 12:19:55 +0000 Date: Sun, 17 Jun 2018 13:19:33 +0100 From: Roy Bamford Subject: Re: [gentoo-dev] Suggestions for simplifying VIDEO_CARDS situation To: gentoo-dev@lists.gentoo.org In-Reply-To: <20180617004931.6c410dcc@professor-x> (from dolsen@gentoo.org on Sun Jun 17 08:49:31 2018) X-Mailer: Balsa 2.5.3 Message-Id: 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 Content-Type: multipart/signed; micalg=PGP-SHA256; protocol="application/pgp-signature"; boundary="=-rkb0HxbmZeUkorJd7dHZ" X-Originating-smarthost03b-IP: [62.3.120.142] Feedback-ID: 62.3.120.142 X-Archives-Salt: d105ce4e-8506-4263-9995-0a1e079bb315 X-Archives-Hash: 5b881932a43d20570713245c844be4e7 --=-rkb0HxbmZeUkorJd7dHZ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 2018.06.17 08:49, Brian Dolbec wrote: > On Sat, 16 Jun 2018 21:40:10 -0700 > Matt Turner wrote: >=20 > > Hello, > >=20 > > VIDEO_CARDS is an annoying mess. We used to have radeon, intel, and > > some others in media-libs/mesa's VIDEO_CARDS. radeon and intel > > corresponded to disparate sets of drivers -- VIDEO_CARDS=3Dradeon has > > meant classic r100, r200, r300, and r600 drivers and gallium r600 > and > > radeonsi drivers. VIDEO_CARDS=3Dintel has meant classic i915 and i965 > > drivers as well as gallium i915. > >=20 > > I added more-specific VIDEO_CARDS for those separate drivers a few > > years ago, so that users could set VIDEO_CARDS=3D"radeon radeonsi" and > > only get the one radeonsi driver they actually wanted while still > > enabling support for x11-libs/libdrm's radeon support code which is > > used by most of those radeon drivers. Of course some users want this > > control and others don't care at all. > >=20 > > The confusion comes in with "classic" DRI drivers vs Gallium > drivers. > > The Gallium abstraction layer allows a hardware driver to handle > > multiple APIs -- OpenGL, D3D9, OpenCL, video decode APIs, etc. For > > instance, users try to build the classic i965 driver (there is no > > Gallium driver for this hardware) with USE=3Dopencl or USE=3Dvaapi and > > don't understand why they didn't get what they wanted (or > REQUIRED_USE > > prevents them from doing so). > >=20 > > Should of Mesa's USE flags, d3d9, llvm, lm_sensors, opencl, openmax, > > unwind, vaapi, vdpau, xa, and xvmc are Gallium-only. Should I make a > > USE_EXPAND for Gallium-only options to attempt to avoid confusion? > > Another point of confusion: not all Gallium drivers support all of > > these features. For instance only the r600 and radeonsi drivers > > support OpenCL. How to best handle this? > >=20 > > It seems like at one extreme you build an extensive set of > > REQUIRED_USE conditions that force users to micromanage their USE > > flags, or you let them enable all sorts of impossible combinations > and > > deal with the confused bug reports. > >=20 > > I would like to somehow get rid of the 'classic' and 'gallium' USE > > flags entirely, but I'm not totally sure how. Maybe I can enable > them > > dependent on VIDEO_CARDS... > >=20 > > Suggestions welcome. > >=20 >=20 > What about creating a tiny pkg that has all the combinations in a > dictionary and can set the USE and VIDEO_CARDS flags according to the > video card(s) you have. >=20 > This would be along the same lines as the > app-portage/cpuid2cpuflags pkg. Then the pkg is updated as new > drivers > and combinations are changed. Perhaps have it run in pkg_postisnt to > print any irregularities it finds and ewarn they need fixing. >=20 > --=20 > Brian Dolbec >=20 >=20 >=20 >=20 That would break for cross compiling. My Raspberry PI has a VC4 GPU but I build things on an AMD64 box. Any autodetection needs an emergency manual override, even if its hidden behind the I_KNOW_WHAT_I_AM_DOING flag. --=20 Regards, Roy Bamford (Neddyseagoon) a member of elections gentoo-ops forum-mods = --=-rkb0HxbmZeUkorJd7dHZ Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE8iqN0lnEsghF0U/tVl/TNarc5wkFAlsmUdUACgkQVl/TNarc 5wmFsxAAirrZihd6KBkiLirEwB3YkxqLGLpyk4eT7CaLWHoN7R0qQoKQXV0mSlwH Ozl62F7QDCWdRAMxu+vS1vW3PNWTtAh/nHiSDH27Jf6d1uEsMsAsol4U8KKkuQE5 QwQghboeRDq/GvxxwSVY5caGhXrlYWfTX8LNxHvb2jL90lAtHB7w+Xq0aidnDoEF 6xjuEwiywKA7ucOVJJo6zH+6CWqraiwcaN5O7w+grt268keDm94jPiYoiChnhpEz ZESpXOUbHgdEtnFRn1ASxduUCk++l1YDvIc/Zt5aHPdz0wmfbNtgYDABShS46em8 oEfDf054CJH7A8/GUu4VE0ozSV8qwDj1UWchCE81RTin9BoHl060ywfWKnnz60/p pABWYtTynnPpMMjB9w20mUFP5+fQ7S8aS84f3GemQ4guTv0KAxX+nx+aT8b+OE7e 4p8FiVZfqWt/9IqiZFL0AuUZXACrvkZRX3/ZO/LBV+tXuu5pwOZkM+p889cAy4MP WuyLFy8FaaoCQ6DRe8zGSDmzoia3R/wJhBjCmmztpXIDXHFTn8yynlN9qlRSxAMh FtwWk7dOKP2YEpqpFGozmGbQJOMR785R0X5PZn48lotE/skRXjHatqrMJTO2L4uM MjyrL8ezAuB8Fec8ghKcRIY3s67e+GVHvn3DbEMEPZqS+r1PHnI= =KMYu -----END PGP SIGNATURE----- --=-rkb0HxbmZeUkorJd7dHZ--