diff --git a/documentation/ref-manual/ref-classes.xml b/documentation/ref-manual/ref-classes.xml
index 3bdd084a84..da546080a3 100644
--- a/documentation/ref-manual/ref-classes.xml
+++ b/documentation/ref-manual/ref-classes.xml
@@ -1283,118 +1283,6 @@
WARN_QA and ERROR_QA
variables:
- ldflags:
- Ensures that the binaries were linked with the
- LDFLAGS options provided by the build system.
- If this test fails, check that the LDFLAGS variable
- is being passed to the linker command.
- useless-rpaths:
- Checks for dynamic library load paths (rpaths) in the binaries that
- by default on a standard system are searched by the linker (e.g.
- /lib and /usr/lib).
- While these paths will not cause any breakage, they do waste space and
- are unnecessary.
- rpaths:
- Checks for rpaths in the binaries that contain build system paths such
- as TMPDIR.
- If this test fails, bad -rpath options are being
- passed to the linker commands and your binaries have potential security
- issues.
- dev-so:
- Checks that the .so symbolic links are in the
- -dev package and not in any of the other packages.
- In general, these symlinks are only useful for development purposes.
- Thus, the -dev package is the correct location for
- them.
- Some very rare cases do exist for dynamically loaded modules where
- these symlinks are needed instead in the main package.
-
- debug-files:
- Checks for .debug directories in anything but the
- -dbg package.
- The debug files should all be in the -dbg package.
- Thus, anything packaged elsewhere is incorrect packaging.
- arch:
- Checks the Executable and Linkable Format (ELF) type, bit size, and endianness
- of any binaries to ensure they match the target architecture.
- This test fails if any binaries don't match the type since there would be an
- incompatibility.
- Sometimes software, like bootloaders, might need to bypass this check.
-
- debug-deps:
- Checks that -dbg packages only depend on other
- -dbg packages and not on any other types of packages,
- which would cause a packaging bug.
- dev-deps:
- Checks that -dev packages only depend on other
- -dev packages and not on any other types of packages,
- which would be a packaging bug.
- pkgconfig:
- Checks .pc files for any
- TMPDIR/WORKDIR
- paths.
- Any .pc file containing these paths is incorrect
- since pkg-config itself adds the correct sysroot prefix
- when the files are accessed.
- textrel:
- Checks for ELF binaries that contain relocations in their
- .text sections, which can result in a
- performance impact at runtime.
- pkgvarcheck:
- Checks through the variables
- RDEPENDS,
- RRECOMMENDS,
- RSUGGESTS,
- RCONFLICTS,
- RPROVIDES,
- RREPLACES,
- FILES,
- ALLOW_EMPTY,
- pkg_preinst,
- pkg_postinst,
- pkg_prerm
- and pkg_postrm, and reports if there are
- variable sets that are not package-specific.
- Using these variables without a package suffix is bad practice,
- and might unnecessarily complicate dependencies of other packages
- within the same recipe or have other unintended consequences.
-
- xorg-driver-abi:
- Checks that all packages containing Xorg drivers have ABI
- dependencies.
- The xserver-xorg recipe provides driver
- ABI names.
- All drivers should depend on the ABI versions that they have
- been built against.
- Driver recipes that include
- xorg-driver-input.inc
- or xorg-driver-video.inc will
- automatically get these versions.
- Consequently, you should only need to explicitly add
- dependencies to binary driver recipes.
-
- libexec:
- Checks if a package contains files in
- /usr/libexec.
- This check is not performed if the
- libexecdir variable has been set
- explicitly to /usr/libexec.
-
- staticdev:
- Checks for static library files (*.a) in
- non-staticdev packages.
-
- la:
- Checks .la files for any TMPDIR
- paths.
- Any .la file containing these paths is incorrect since
- libtool adds the correct sysroot prefix when using the
- files automatically itself.
- desktop:
- Runs the desktop-file-validate program
- against any .desktop files to validate
- their contents against the specification for
- .desktop files.already-stripped:
Checks that produced binaries have not already been
stripped prior to the build system extracting debug symbols.
@@ -1404,15 +1292,85 @@
-dbg packages, this stripping must be
disabled.
- split-strip:
- Reports that splitting or stripping debug symbols from binaries
- has failed.
- arch:
- Checks to ensure the architecture, bit size, and endianness
- of all output binaries matches that of the target.
- This test can detect when the wrong compiler or compiler options
- have been used.
+ Checks the Executable and Linkable Format (ELF) type, bit size,
+ and endianness of any binaries to ensure they match the target
+ architecture.
+ This test fails if any binaries do not match the type since
+ there would be an incompatibility.
+ The test could indicate that the
+ wrong compiler or compiler options have been used.
+ Sometimes software, like bootloaders, might need to bypass
+ this check.
+
+ buildpaths:
+ Checks for paths to locations on the build host inside the
+ output files.
+ Currently, this test triggers too many false positives and
+ thus is not normally enabled.
+
+ compile-host-path:
+ Checks the do_compile log for indications
+ that paths to locations on the build host were used.
+ Using such paths might result in host contamination of the
+ build output.
+
+ debug-deps:
+ Checks that -dbg packages only depend on other
+ -dbg packages and not on any other types of packages,
+ which would cause a packaging bug.
+ debug-files:
+ Checks for .debug directories in anything but the
+ -dbg package.
+ The debug files should all be in the -dbg package.
+ Thus, anything packaged elsewhere is incorrect packaging.
+ dep-cmp:
+ Checks for invalid version comparison statements in runtime
+ dependency relationships between packages (i.e. in
+ RDEPENDS,
+ RRECOMMENDS,
+ RSUGGESTS,
+ RPROVIDES,
+ RREPLACES,
+ and
+ RCONFLICTS
+ variable values).
+ Any invalid comparisons might trigger failures or undesirable
+ behavior when passed to the package manager.
+
+ desktop:
+ Runs the desktop-file-validate program
+ against any .desktop files to validate
+ their contents against the specification for
+ .desktop files.
+ dev-deps:
+ Checks that -dev packages only depend on other
+ -dev packages and not on any other types of packages,
+ which would be a packaging bug.
+ dev-so:
+ Checks that the .so symbolic links are in the
+ -dev package and not in any of the other packages.
+ In general, these symlinks are only useful for development purposes.
+ Thus, the -dev package is the correct location for
+ them.
+ Some very rare cases do exist for dynamically loaded modules where
+ these symlinks are needed instead in the main package.
+
+ files-invalid:
+ Checks for
+ FILES
+ variable values that contain "//", which is invalid.
+
+ incompatible-license:
+ Report when packages are excluded from being created due to
+ being marked with a license that is in
+ INCOMPATIBLE_LICENSE.
+
+ install-host-path:
+ Checks the do_install log for indications
+ that paths to locations on the build host were used.
+ Using such paths might result in host contamination of the
+ build output.
installed-vs-shipped:
Reports when files have been installed within
@@ -1428,42 +1386,17 @@
do_install if the files are not
needed in any package.
- dep-cmp:
- Checks for invalid version comparison statements in runtime
- dependency relationships between packages (i.e. in
- RDEPENDS,
- RRECOMMENDS,
- RSUGGESTS,
- RPROVIDES,
- RREPLACES,
- and
- RCONFLICTS
- variable values).
- Any invalid comparisons might trigger failures or undesirable
- behavior when passed to the package manager.
-
- files-invalid:
- Checks for
- FILES
- variable values that contain "//", which is invalid.
-
- incompatible-license:
- Report when packages are excluded from being created due to
- being marked with a license that is in
- INCOMPATIBLE_LICENSE.
-
- compile-host-path:
- Checks the do_compile log for indications
- that paths to locations on the build host were used.
- Using such paths might result in host contamination of the
- build output.
-
- install-host-path:
- Checks the do_install log for indications
- that paths to locations on the build host were used.
- Using such paths might result in host contamination of the
- build output.
-
+ la:
+ Checks .la files for any TMPDIR
+ paths.
+ Any .la file containing these paths is incorrect since
+ libtool adds the correct sysroot prefix when using the
+ files automatically itself.
+ ldflags:
+ Ensures that the binaries were linked with the
+ LDFLAGS options provided by the build system.
+ If this test fails, check that the LDFLAGS variable
+ is being passed to the linker command.libdir:
Checks for libraries being installed into incorrect
(possibly hardcoded) installation paths.
@@ -1474,6 +1407,13 @@
/usr/lib64/foo.so when
${libdir} is "/usr/lib".
+ libexec:
+ Checks if a package contains files in
+ /usr/libexec.
+ This check is not performed if the
+ libexecdir variable has been set
+ explicitly to /usr/libexec.
+ packages-list:
Checks for the same package being listed multiple times through
the PACKAGES
@@ -1493,12 +1433,45 @@
Reports lines in fs-perms.txt that
specify 'link' where the specified target already exists.
+ perms:
+ Currently, this check is unused but reserved.
+
+ pkgconfig:
+ Checks .pc files for any
+ TMPDIR/WORKDIR
+ paths.
+ Any .pc file containing these paths is incorrect
+ since pkg-config itself adds the correct sysroot prefix
+ when the files are accessed.pkgname:
Checks that all packages in
PACKAGES
have names that do not contain invalid characters (i.e.
characters other than 0-9, a-z, ., +, and -).
+ pkgv-undefined:
+ Checks to see if the PKGV variable
+ is undefined during do_package.
+
+ pkgvarcheck:
+ Checks through the variables
+ RDEPENDS,
+ RRECOMMENDS,
+ RSUGGESTS,
+ RCONFLICTS,
+ RPROVIDES,
+ RREPLACES,
+ FILES,
+ ALLOW_EMPTY,
+ pkg_preinst,
+ pkg_postinst,
+ pkg_prerm
+ and pkg_postrm, and reports if there are
+ variable sets that are not package-specific.
+ Using these variables without a package suffix is bad practice,
+ and might unnecessarily complicate dependencies of other packages
+ within the same recipe or have other unintended consequences.
+ pn-overrides:
Checks that a recipe does not have a name
(PN) value
@@ -1516,6 +1489,20 @@
FILES_${PN} = "xyz" effectively turn into
FILES = "xyz".
+ rpaths:
+ Checks for rpaths in the binaries that contain build system paths such
+ as TMPDIR.
+ If this test fails, bad -rpath options are being
+ passed to the linker commands and your binaries have potential security
+ issues.
+ split-strip:
+ Reports that splitting or stripping debug symbols from binaries
+ has failed.
+
+ staticdev:
+ Checks for static library files (*.a) in
+ non-staticdev packages.
+ symlink-to-sysroot:
Checks for symlinks in packages that point into
TMPDIR
@@ -1523,6 +1510,10 @@
Such symlinks will work on the host, but are clearly invalid
when running on the target.
+ textrel:
+ Checks for ELF binaries that contain relocations in their
+ .text sections, which can result in a
+ performance impact at runtime.unsafe-references-in-binaries:
Reports when a binary installed in
${base_libdir},
@@ -1565,6 +1556,12 @@
/usr.
+ useless-rpaths:
+ Checks for dynamic library load paths (rpaths) in the binaries that
+ by default on a standard system are searched by the linker (e.g.
+ /lib and /usr/lib).
+ While these paths will not cause any breakage, they do waste space and
+ are unnecessary.var-undefined:
Reports when variables fundamental to packaging (i.e.
WORKDIR,
@@ -1574,19 +1571,6 @@
PKGD) are
undefined during do_package.
- pkgv-undefined:
- Checks to see if the PKGV variable
- is undefined during do_package.
-
- buildpaths:
- Checks for paths to locations on the build host inside the
- output files.
- Currently, this test triggers too many false positives and
- thus is not normally enabled.
-
- perms:
- Currently, this check is unused but reserved.
- version-going-backwards:
If Build History is enabled, reports when a package
being written out has a lower version than the previously
@@ -1602,6 +1586,20 @@
this situation.
+ xorg-driver-abi:
+ Checks that all packages containing Xorg drivers have ABI
+ dependencies.
+ The xserver-xorg recipe provides driver
+ ABI names.
+ All drivers should depend on the ABI versions that they have
+ been built against.
+ Driver recipes that include
+ xorg-driver-input.inc
+ or xorg-driver-video.inc will
+ automatically get these versions.
+ Consequently, you should only need to explicitly add
+ dependencies to binary driver recipes.
+