From 7aeb27c75916a9cb99d6e9e56f0b03860d644b7d Mon Sep 17 00:00:00 2001 From: "ingenarel (NeoJesus)" Date: Sun, 1 Feb 2026 13:47:46 +0600 Subject: [PATCH 1/2] ebuild-writing/variables: fix accidental double spaces Signed-off-by: ingenarel (NeoJesus) --- ebuild-writing/variables/text.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index b1f6755c..67cc0d43 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -514,7 +514,7 @@ list does not outweigh the burden of maintaining it. In EAPI 8, individual items in SRC_URI can be exempted from automatic mirroring and fetching restrictions (imposed by RESTRICT="mirror" and RESTRICT="fetch") by prefixing the addresses with mirror+ or -fetch+. For example, in the following ebuild, +fetch+. For example, in the following ebuild,

@@ -854,7 +854,7 @@ string when it conceptually refers to /.

Variables have significant value in ebuilds, making it possible to avoid -unnecessary repetitions and make maintenance easier. However, +unnecessary repetitions and make maintenance easier. However, references to constant-value variables should be used with care as their excessive use can harm readability and increase maintenance burden (e.g. when renaming a package). In particular, using variables whose values From 2e93cb3ce4681195182fae704eb449502fadc09c Mon Sep 17 00:00:00 2001 From: "ingenarel (NeoJesus)" Date: Sun, 1 Feb 2026 14:02:54 +0600 Subject: [PATCH 2/2] ebuild-writing/variables: add QA control variables section Signed-off-by: ingenarel (NeoJesus) --- ebuild-writing/variables/text.xml | 158 ++++++++++++++++++++++++++++++ 1 file changed, 158 insertions(+) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index 67cc0d43..b10320be 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -1062,6 +1062,164 @@ rule, as it is intended to be passed to the compiler driver rather than + + + +

+QA control variables + + +

+Several QA variables are provided which allow an ebuild to manipulate some of +the QA checks performed by portage. Use of these variables in ebuilds should +be kept to an absolute minimum otherwise they defeat the purpose of the QA +checks, and their use is subject to agreement of the QA team. They are +primarily intended for use by ebuilds that install closed-source binary +objects that cannot be altered. +

+ + +Objects that violate these rules may fail on some architectures. + + + + + + + + + QA_AM_MAINTAINER_MODE + + A list of lines containing automake missing --run commands. The + lines may contain regular expressions with escape-quoted special + characters. + + + + QA_CONFIG_IMPL_DECL_SKIP + + A list of function names to ignore when checking for + -Wimplicit-function-declaration in configure logs. This should only + be used for false positives. + + + + QA_CONFIGURE_OPTIONS + + A list of configure options which trigger warnings about unrecognized + options. The options may contain regular expressions with escape-quoted + special characters. + + + + QA_DESKTOP_FILE + + A list of file paths, relative to the image directory, of desktop files + which should not be validated. The paths may contain regular expressions + with escape-quoted special characters. + + + + QA_MULTILIB_PATHS + + A list of file paths, relative to the image directory, of files that + should be ignored for the multilib-strict checks. The paths may contain + regular expressions with escape-quoted special characters. + + + + QA_PKGCONFIG_VERSION + + If set, then portage verifies that all pkg-config .pc files have a + Version field with the value of QA_PKGCONFIG_VERSION. For + example, set QA_PKGCONFIG_VERSION=${PV} if your package is expected + to install all pkg-config .pc files with a Version field containing + ${PV} . + + + + QA_PREBUILT + + A list of file paths, relative to the image directory, of files that are + pre-built binaries. Paths listed here will be appended to each of the + QA_* variables listed below. The paths may contain fnmatch-like + patterns which will be internally translated to regular expressions for + the QA_* variables that support regular expressions instead of + fnmatch patterns. The translation mechanism simply replaces * with + .*. + + + + QA_DT_NEEDED + + A list of file paths, relative to the image directory, of shared libraries + that lack NEEDED entries. The paths may contain regular expressions with + escape-quoted special characters. + + + + QA_EXECSTACK + + A list of file paths, relative to the image directory, of objects that + require executable stack in order to run. The paths may contain fnmatch + patterns. This variable is intended to be used on objects that truly need + executable stack (i.e. not those marked to need it which in fact do not). + + + + QA_FLAGS_IGNORED + + A list of file paths, relative to the image directory, + of files that do not contain .GCC.command.line sections or contain + .hash sections. This variable is intended to be used on files of + binary packages which ignore CFLAGS, CXXFLAGS, + FFLAGS, FCFLAGS, and LDFLAGS variables. + + + + QA_PRESTRIPPED + + A list of file paths, relative to the image directory, of files that + contain pre-stripped binaries. The paths may contain regular expressions + with escape-quoted special characters. + + + + QA_SONAME + + A list of file paths, relative to the image directory, of shared libraries + that lack SONAMEs. The paths may contain regular expressions with + escape-quoted special characters. + + + + QA_SONAME_NO_SYMLINK + + A list of file paths, relative to the image directory, of shared libraries + that have SONAMEs but should not have a corresponding SONAME + symlink in the same directory. The paths may contain regular expressions + with escape-quoted special characters. + + + + QA_TEXTRELS + + This variable can be set to a list of file paths, relative to the image + directory, of files that contain text relocations that cannot be + eliminated. The paths may contain fnmatch patterns. This variable is + intended to be used on closed-source binary objects that cannot be + altered. + + + + QA_WX_LOAD + + A list of file paths, relative to the image directory, of files that + contain writable and executable segments. These are rare. The paths may + contain fnmatch patterns. + + +
VariablePurpose