[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-dev
Subject:    [gentoo-dev] [PATCH eclass2manpage] Add @PROVIDES tag to indicate transitive eclass inheritance
From:       Michał Górny <mgorny () gentoo ! org>
Date:       2021-08-29 9:17:09
Message-ID: 20210829091709.256537-1-mgorny () gentoo ! org
[Download RAW message or body]

Add a @PROVIDES eclassdoc tag that can be used to indicate that
a particular eclass transitively provides the functions from another
eclass and therefore ebuilds inheriting it do not have to explicitly
inherit the other eclass.

For example, distutils-r1 provides python-r1/python-single-r1, and all
python*-r1 eclasse provide python-utils-r1.

This data will be used to drive pkgcheck checks for missing inherits.

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 eclass-to-manpage.awk | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/eclass-to-manpage.awk b/eclass-to-manpage.awk
index 1ffafd1..cde7c2b 100755
--- a/eclass-to-manpage.awk
+++ b/eclass-to-manpage.awk
@@ -174,6 +174,7 @@ function handle_eclass() {
 	eclass_maintainer = ""
 	eclass_author = ""
 	supported_eapis = ""
+	provides = ""
 	blurb = ""
 	deprecated = ""
 	desc = ""
@@ -207,6 +208,8 @@ function handle_eclass() {
 		vcs_url = eat_line()
 	if ($2 == "@SUPPORTED_EAPIS:")
 		supported_eapis = eat_line()
+	if ($2 == "@PROVIDES:")
+		provides = eat_line()
 	if ($2 == "@BLURB:")
 		blurb = eat_line()
 	if ($2 == "@DEPRECATED:")
@@ -234,6 +237,10 @@ function handle_eclass() {
 		print ".SH \"SUPPORTED EAPIS\""
 		print man_text(supported_eapis)
 	}
+	if (provides != "") {
+		print ".SH \"TRANSITIVELY PROVIDED ECLASSES\""
+		print man_text(provides)
+	}
 	if (example != "") {
 		print ".SH \"EXAMPLE\""
 		print man_text(example)
-- 
2.33.0


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic