public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] [PATCH 00/44] @PROVIDES for eclasses
@ 2021-09-02 10:46 Michał Górny
  2021-09-02 10:46 ` [gentoo-dev] [PATCH 01/44] ant-tasks.eclass: Set @PROVIDES Michał Górny
                   ` (44 more replies)
  0 siblings, 45 replies; 52+ messages in thread
From: Michał Górny @ 2021-09-02 10:46 UTC (permalink / raw
  To: gentoo-dev; +Cc: Michał Górny

Hi,

Here are proposed @PROVIDES value for eclasses.

@PROVIDES is the new eclassdoc key that indicates that the eclass
indirectly provides API of another eclasses, i.e. if X has @PROVIDES
on Y, then you don't have to inherit Y explicitly when using X.

For example, python-r1 eclasses all provide python-utils-r1 since you
never have to inherit it when using python-r1 eclasses, and distutils-r1
provides python-r1 or python-single-r1.  @PROVIDES are processed
recursively, i.e. you don't need to list indirectly provided eclasses.

I've assembled the list by running `pkgcheck scan -c InheritsCheck`
until it didn't seem to list any obvious false positives.  However,
eclass maintainers probably know better which eclasses should be
provided indirectly, so please review.


Michał Górny (44):
  ant-tasks.eclass: Set @PROVIDES
  apache-module.eclass: Set @PROVIDES
  autotools.eclass: Set @PROVIDES
  cmake.eclass: Set @PROVIDES
  cmake-multilib.eclass: Set @PROVIDES
  cmake-utils.eclass: Set @PROVIDES
  distutils-r1.eclass: Set @PROVIDES
  ecm.eclass: Set @PROVIDES
  eutils.eclass: Set @PROVIDES
  gnome2.eclass: Set @PROVIDES
  gnome2-utils.eclass: Set @PROVIDES
  gnustep-2.eclass: Set @PROVIDES
  golang-build.eclass: Set @PROVIDES
  golang-vcs-snapshot.eclass: Set @PROVIDES
  go-module.eclass: Set @PROVIDES
  gstreamer.eclass: Set @PROVIDES
  gstreamer-meson.eclass: Set @PROVIDES
  haskell-cabal.eclass: Set @PROVIDES
  java-ant-2.eclass: Set @PROVIDES
  java-osgi.eclass: Set @PROVIDES
  java-pkg-2.eclass: Set @PROVIDES
  java-pkg-opt-2.eclass: Set @PROVIDES
  kernel-build.eclass: Set @PROVIDES
  kernel-install.eclass: Set @PROVIDES
  kodi-addon.eclass: Set @PROVIDES
  linux-mod.eclass: Set @PROVIDES
  lua.eclass: Set @PROVIDES
  lua-single.eclass: Set @PROVIDES
  meson.eclass: Set @PROVIDES
  meson-multilib.eclass: Set @PROVIDES
  multilib-build.eclass: Set @PROVIDES
  multilib-minimal.eclass: Set @PROVIDES
  perl-module.eclass: Set @PROVIDES
  php-ext-pecl-r3.eclass: Set @PROVIDES
  postgres-multi.eclass: Set @PROVIDES
  python-any-r1.eclass: Set @PROVIDES
  python-r1.eclass: Set @PROVIDES
  python-single-r1.eclass: Set @PROVIDES
  ros-catkin.eclass: Set @PROVIDES
  ruby-fakegem.eclass: Set @PROVIDES
  ruby-ng-gnome2.eclass: Set @PROVIDES
  ruby-single.eclass: Set @PROVIDES
  xdg.eclass: Set @PROVIDES
  xorg-3.eclass: Set @PROVIDES

 eclass/ant-tasks.eclass           | 1 +
 eclass/apache-module.eclass       | 1 +
 eclass/autotools.eclass           | 1 +
 eclass/cmake-multilib.eclass      | 1 +
 eclass/cmake-utils.eclass         | 1 +
 eclass/cmake.eclass               | 1 +
 eclass/distutils-r1.eclass        | 1 +
 eclass/ecm.eclass                 | 1 +
 eclass/eutils.eclass              | 1 +
 eclass/gnome2-utils.eclass        | 1 +
 eclass/gnome2.eclass              | 1 +
 eclass/gnustep-2.eclass           | 1 +
 eclass/go-module.eclass           | 3 ++-
 eclass/golang-build.eclass        | 1 +
 eclass/golang-vcs-snapshot.eclass | 1 +
 eclass/gstreamer-meson.eclass     | 1 +
 eclass/gstreamer.eclass           | 1 +
 eclass/haskell-cabal.eclass       | 1 +
 eclass/java-ant-2.eclass          | 1 +
 eclass/java-osgi.eclass           | 1 +
 eclass/java-pkg-2.eclass          | 1 +
 eclass/java-pkg-opt-2.eclass      | 1 +
 eclass/kernel-build.eclass        | 1 +
 eclass/kernel-install.eclass      | 1 +
 eclass/kodi-addon.eclass          | 1 +
 eclass/linux-mod.eclass           | 1 +
 eclass/lua-single.eclass          | 1 +
 eclass/lua.eclass                 | 1 +
 eclass/meson-multilib.eclass      | 1 +
 eclass/meson.eclass               | 1 +
 eclass/multilib-build.eclass      | 1 +
 eclass/multilib-minimal.eclass    | 1 +
 eclass/perl-module.eclass         | 1 +
 eclass/php-ext-pecl-r3.eclass     | 1 +
 eclass/postgres-multi.eclass      | 1 +
 eclass/python-any-r1.eclass       | 1 +
 eclass/python-r1.eclass           | 1 +
 eclass/python-single-r1.eclass    | 1 +
 eclass/ros-catkin.eclass          | 1 +
 eclass/ruby-fakegem.eclass        | 1 +
 eclass/ruby-ng-gnome2.eclass      | 1 +
 eclass/ruby-single.eclass         | 1 +
 eclass/xdg.eclass                 | 1 +
 eclass/xorg-3.eclass              | 1 +
 44 files changed, 45 insertions(+), 1 deletion(-)

-- 
2.33.0



^ permalink raw reply	[flat|nested] 52+ messages in thread

end of thread, other threads:[~2021-09-02 14:29 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-09-02 10:46 [gentoo-dev] [PATCH 00/44] @PROVIDES for eclasses Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 01/44] ant-tasks.eclass: Set @PROVIDES Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 02/44] apache-module.eclass: " Michał Górny
2021-09-02 12:50   ` Michael Orlitzky
2021-09-02 12:58     ` Michał Górny
2021-09-02 13:50       ` Michael Orlitzky
2021-09-02 14:29         ` Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 03/44] autotools.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 04/44] cmake.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 05/44] cmake-multilib.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 06/44] cmake-utils.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 07/44] distutils-r1.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 08/44] ecm.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 09/44] eutils.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 10/44] gnome2.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 11/44] gnome2-utils.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 12/44] gnustep-2.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 13/44] golang-build.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 14/44] golang-vcs-snapshot.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 15/44] go-module.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 16/44] gstreamer.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 17/44] gstreamer-meson.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 18/44] haskell-cabal.eclass: " Michał Górny
2021-09-02 10:46 ` [gentoo-dev] [PATCH 19/44] java-ant-2.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 20/44] java-osgi.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 21/44] java-pkg-2.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 22/44] java-pkg-opt-2.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 23/44] kernel-build.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 24/44] kernel-install.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 25/44] kodi-addon.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 26/44] linux-mod.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 27/44] lua.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 28/44] lua-single.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 29/44] meson.eclass: " Michał Górny
2021-09-02 14:17   ` Mike Gilbert
2021-09-02 14:19     ` Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 30/44] meson-multilib.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 31/44] multilib-build.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 32/44] multilib-minimal.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 33/44] perl-module.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 34/44] php-ext-pecl-r3.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 35/44] postgres-multi.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 36/44] python-any-r1.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 37/44] python-r1.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 38/44] python-single-r1.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 39/44] ros-catkin.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 40/44] ruby-fakegem.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 41/44] ruby-ng-gnome2.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 42/44] ruby-single.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 43/44] xdg.eclass: " Michał Górny
2021-09-02 10:47 ` [gentoo-dev] [PATCH 44/44] xorg-3.eclass: " Michał Górny
2021-09-02 11:48 ` [gentoo-dev] [PATCH 00/44] @PROVIDES for eclasses Marek Szuba

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox