From 21cd3d6212f56614c4dee7cc441414419c102ff6 Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Mon, 14 Apr 2014 09:01:46 -0700 Subject: ref-manual: Re-ordered the insane.bbclass tests list. I ordered these 39 tests by alphebetical ordering. (From yocto-docs rev: 3a7ef1c149ee1f8f0ac4709e906f5c84ed7ab642) Signed-off-by: Scott Rifenbark Signed-off-by: Richard Purdie --- documentation/ref-manual/ref-classes.xml | 302 +++++++++++++++---------------- 1 file changed, 150 insertions(+), 152 deletions(-) (limited to 'documentation') 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,30 +1292,38 @@ -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. - installed-vs-shipped: - Reports when files have been installed within - do_install but have not been included in - any package by way of the - FILES - variable. - Files that do not appear in any package cannot be present in - an image later on in the build process. - Ideally, all installed files should be packaged or not - installed at all. - These files can be deleted at the end of - do_install if the files are not - needed in any 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. + 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 @@ -1442,6 +1338,24 @@ 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 @@ -1452,18 +1366,37 @@ 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. + installed-vs-shipped: + Reports when files have been installed within + do_install but have not been included in + any package by way of the + FILES + variable. + Files that do not appear in any package cannot be present in + an image later on in the build process. + Ideally, all installed files should be packaged or not + installed at all. + These files can be deleted at the end of + do_install if the files are not + needed in any package. + + 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. + -- cgit v1.2.3-54-g00ecf