diff options
author | Paul Eggleton <bluelightning@bluelightning.org> | 2023-04-22 15:19:44 +1200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-04-22 10:59:12 +0100 |
commit | 1b9bcc7b19f795af1a7c4d571f9eeaadd8440ad5 (patch) | |
tree | b7049dd1eac40feff7b85fab4a1230d5f81f6da5 | |
parent | 1d4d5371ec514126dafe6efe99daa496ad69271d (diff) | |
download | poky-1b9bcc7b19f795af1a7c4d571f9eeaadd8440ad5.tar.gz |
ref-manual: add missing QA checks from previous releases
This section needs to be kept in sync with the "QA Error and Warning
Messages" section (qa-checks.rst) - this is the other direction that
tells folks what all of the values in WARN_QA / ERROR_QA are intended
to do. Add the ones that we missed adding here for previous releases,
and also use a proper reference for the buildhistory class in the entry
for version-going-backwards.
(From yocto-docs rev: 356a6e650bb1de66b806142f75a03bda57972a94)
Signed-off-by: Paul Eggleton <bluelightning@bluelightning.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | documentation/ref-manual/classes.rst | 58 |
1 files changed, 51 insertions, 7 deletions
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst index 32494ee09f..aacbb8a495 100644 --- a/documentation/ref-manual/classes.rst +++ b/documentation/ref-manual/classes.rst | |||
@@ -1192,6 +1192,11 @@ Here are the tests you can list with the :term:`WARN_QA` and | |||
1192 | ``initscripts`` recipe is actually built and thus the | 1192 | ``initscripts`` recipe is actually built and thus the |
1193 | ``initscripts-functions`` package is made available. | 1193 | ``initscripts-functions`` package is made available. |
1194 | 1194 | ||
1195 | - ``configure-gettext:`` Checks that if a recipe is building something | ||
1196 | that uses automake and the automake files contain an ``AM_GNU_GETTEXT`` | ||
1197 | directive, that the recipe also inherits the :ref:`ref-classes-gettext` | ||
1198 | class to ensure that gettext is available during the build. | ||
1199 | |||
1195 | - ``compile-host-path:`` Checks the | 1200 | - ``compile-host-path:`` Checks the |
1196 | :ref:`ref-tasks-compile` log for indications that | 1201 | :ref:`ref-tasks-compile` log for indications that |
1197 | paths to locations on the build host were used. Using such paths | 1202 | paths to locations on the build host were used. Using such paths |
@@ -1308,11 +1313,32 @@ Here are the tests you can list with the :term:`WARN_QA` and | |||
1308 | ``/usr/libexec``. This check is not performed if the ``libexecdir`` | 1313 | ``/usr/libexec``. This check is not performed if the ``libexecdir`` |
1309 | variable has been set explicitly to ``/usr/libexec``. | 1314 | variable has been set explicitly to ``/usr/libexec``. |
1310 | 1315 | ||
1316 | - ``mime:`` Check that if a package contains mime type files (``.xml`` | ||
1317 | files in ``${datadir}/mime/packages``) that the recipe also inherits | ||
1318 | the :ref:`ref-classes-mime` class in order to ensure that these get | ||
1319 | properly installed. | ||
1320 | |||
1321 | - ``mime-xdg:`` Checks that if a package contains a .desktop file with a | ||
1322 | 'MimeType' key present, that the recipe inherits the | ||
1323 | :ref:`ref-classes-mime-xdg` class that is required in order for that | ||
1324 | to be activated. | ||
1325 | |||
1326 | - ``missing-update-alternatives:`` Check that if a recipe sets the | ||
1327 | :term:`ALTERNATIVE` variable that the recipe also inherits | ||
1328 | :ref:`ref-classes-update-alternatives` such that the alternative will | ||
1329 | be correctly set up. | ||
1330 | |||
1311 | - ``packages-list:`` Checks for the same package being listed | 1331 | - ``packages-list:`` Checks for the same package being listed |
1312 | multiple times through the :term:`PACKAGES` variable | 1332 | multiple times through the :term:`PACKAGES` variable |
1313 | value. Installing the package in this manner can cause errors during | 1333 | value. Installing the package in this manner can cause errors during |
1314 | packaging. | 1334 | packaging. |
1315 | 1335 | ||
1336 | - ``patch-fuzz:`` Checks for fuzz in patch files that may allow | ||
1337 | them to apply incorrectly if the underlying code changes. | ||
1338 | |||
1339 | - ``perllocalpod:`` Checks for ``perllocal.pod`` being erroneously | ||
1340 | installed and packaged by a recipe. | ||
1341 | |||
1316 | - ``perm-config:`` Reports lines in ``fs-perms.txt`` that have an | 1342 | - ``perm-config:`` Reports lines in ``fs-perms.txt`` that have an |
1317 | invalid format. | 1343 | invalid format. |
1318 | 1344 | ||
@@ -1366,12 +1392,20 @@ Here are the tests you can list with the :term:`WARN_QA` and | |||
1366 | options are being passed to the linker commands and your binaries | 1392 | options are being passed to the linker commands and your binaries |
1367 | have potential security issues. | 1393 | have potential security issues. |
1368 | 1394 | ||
1395 | - ``shebang-size:`` Check that the shebang line (``#!`` in the first line) | ||
1396 | in a packaged script is not longer than 128 characters, which can cause | ||
1397 | an error at runtime depending on the operating system. | ||
1398 | |||
1369 | - ``split-strip:`` Reports that splitting or stripping debug symbols | 1399 | - ``split-strip:`` Reports that splitting or stripping debug symbols |
1370 | from binaries has failed. | 1400 | from binaries has failed. |
1371 | 1401 | ||
1372 | - ``staticdev:`` Checks for static library files (``*.a``) in | 1402 | - ``staticdev:`` Checks for static library files (``*.a``) in |
1373 | non-``staticdev`` packages. | 1403 | non-``staticdev`` packages. |
1374 | 1404 | ||
1405 | - ``src-uri-bad:`` Checks that the :term:`SRC_URI` value set by a recipe | ||
1406 | does not contain a reference to ``${PN}`` (instead of the correct | ||
1407 | ``${BPN}``) nor refers to unstable Github archive tarballs. | ||
1408 | |||
1375 | - ``symlink-to-sysroot:`` Checks for symlinks in packages that point | 1409 | - ``symlink-to-sysroot:`` Checks for symlinks in packages that point |
1376 | into :term:`TMPDIR` on the host. Such symlinks will | 1410 | into :term:`TMPDIR` on the host. Such symlinks will |
1377 | work on the host, but are clearly invalid when running on the target. | 1411 | work on the host, but are clearly invalid when running on the target. |
@@ -1382,6 +1416,12 @@ Here are the tests you can list with the :term:`WARN_QA` and | |||
1382 | ":doc:`/ref-manual/qa-checks`" for more information regarding runtime performance | 1416 | ":doc:`/ref-manual/qa-checks`" for more information regarding runtime performance |
1383 | issues. | 1417 | issues. |
1384 | 1418 | ||
1419 | - ``unhandled-features-check:`` check that if one of the variables that | ||
1420 | the :ref:`ref-classes-features_check` class supports (e.g. | ||
1421 | :term:`REQUIRED_DISTRO_FEATURES`) is set by a recupe, then the recipe | ||
1422 | also inherits :ref:`ref-classes-features_check` in order for the | ||
1423 | requirement to actually work. | ||
1424 | |||
1385 | - ``unlisted-pkg-lics:`` Checks that all declared licenses applying | 1425 | - ``unlisted-pkg-lics:`` Checks that all declared licenses applying |
1386 | for a package are also declared on the recipe level (i.e. any license | 1426 | for a package are also declared on the recipe level (i.e. any license |
1387 | in ``LICENSE:*`` should appear in :term:`LICENSE`). | 1427 | in ``LICENSE:*`` should appear in :term:`LICENSE`). |
@@ -1391,19 +1431,23 @@ Here are the tests you can list with the :term:`WARN_QA` and | |||
1391 | the linker (e.g. ``/lib`` and ``/usr/lib``). While these paths will | 1431 | the linker (e.g. ``/lib`` and ``/usr/lib``). While these paths will |
1392 | not cause any breakage, they do waste space and are unnecessary. | 1432 | not cause any breakage, they do waste space and are unnecessary. |
1393 | 1433 | ||
1434 | - ``usrmerge:`` If ``usrmerge`` is in :term:`DISTRO_FEATURES`, this | ||
1435 | check will ensure that no package installs files to root (``/bin``, | ||
1436 | ``/sbin``, ``/lib``, ``/lib64``) directories. | ||
1437 | |||
1394 | - ``var-undefined:`` Reports when variables fundamental to packaging | 1438 | - ``var-undefined:`` Reports when variables fundamental to packaging |
1395 | (i.e. :term:`WORKDIR`, | 1439 | (i.e. :term:`WORKDIR`, |
1396 | :term:`DEPLOY_DIR`, :term:`D`, | 1440 | :term:`DEPLOY_DIR`, :term:`D`, |
1397 | :term:`PN`, and :term:`PKGD`) are undefined | 1441 | :term:`PN`, and :term:`PKGD`) are undefined |
1398 | during :ref:`ref-tasks-package`. | 1442 | during :ref:`ref-tasks-package`. |
1399 | 1443 | ||
1400 | - ``version-going-backwards:`` If Build History is enabled, reports | 1444 | - ``version-going-backwards:`` If the :ref:`ref-classes-buildhistory` |
1401 | when a package being written out has a lower version than the | 1445 | class is enabled, reports when a package being written out has a lower |
1402 | previously written package under the same name. If you are placing | 1446 | version than the previously written package under the same name. If |
1403 | output packages into a feed and upgrading packages on a target system | 1447 | you are placing output packages into a feed and upgrading packages on |
1404 | using that feed, the version of a package going backwards can result | 1448 | a target system using that feed, the version of a package going |
1405 | in the target system not correctly upgrading to the "new" version of | 1449 | backwards can result in the target system not correctly upgrading to |
1406 | the package. | 1450 | the "new" version of the package. |
1407 | 1451 | ||
1408 | .. note:: | 1452 | .. note:: |
1409 | 1453 | ||