From 15b49e25dc554b7c865d324b7ea978d58a41eb43 Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Fri, 19 Oct 2012 10:06:39 -0700 Subject: documentation: poky-ref-manual - Updates to DEPENDS and RDEPENDS Suggested changes to help clear up what the list of items in each of these variables should be and how automatic handling of libraries is dealt with. Richard Purdie reviewed the changes. (From yocto-docs rev: 53865f904d5d4675286419a57bbb9282edfc1d0b) Signed-off-by: Scott Rifenbark Signed-off-by: Richard Purdie --- documentation/poky-ref-manual/ref-variables.xml | 86 +++++++++++++++---------- 1 file changed, 52 insertions(+), 34 deletions(-) (limited to 'documentation') diff --git a/documentation/poky-ref-manual/ref-variables.xml b/documentation/poky-ref-manual/ref-variables.xml index 69bb3d43dd..e411ceb9c0 100644 --- a/documentation/poky-ref-manual/ref-variables.xml +++ b/documentation/poky-ref-manual/ref-variables.xml @@ -435,9 +435,11 @@ DEPENDS - A list of build-time dependencies for a given recipe. - The variable indicates recipes that must have been staged before a - particular recipe can configure. + Lists a recipe's build-time dependencies + (i.e. other recipe files). + The system ensures that all the dependencies listed + have been built and have their contents in the appropriate + sysroots before the recipe's configure task is executed. @@ -2002,45 +2004,61 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3" RDEPENDS - A list of packages that must be installed as part of a package being built. - The package being built has a runtime dependency on the packages in the - variable's list. - In other words, in order for the package being built to run correctly, - it depends on these listed packages. - If a package in this list cannot be found during the build, the build - will not complete. + Lists a package's run-time dependencies (i.e. other packages) + that must be installed for the package to be built. + In other words, in order for the package to be built and + run correctly, it depends on the listed packages. + If a package in this list cannot be found, it is probable + that a dependency error would occur before the build. + - Because the RDEPENDS variable applies to packages - being built, you should - always attach an override to the variable to specify the particular runtime package - that has the dependency. - For example, suppose you are building a development package that depends - on the perl package. - In this case, you would use the following RDEPENDS - statement: + The names of the variables you list with + RDEPENDS must be the names of other + packages as listed in the + PACKAGES + variable. + You should not list recipe names (PN). + + + + Because the RDEPENDS variable applies + to packages being built, you should + always attach a package name to the variable to specify the + particular run-time package that has the dependency. + For example, suppose you are building a development package + that depends on the perl package. + In this case, you would use the following + RDEPENDS statement: RDEPENDS_${PN}-dev += "perl" - In the example, the package name (${PN}-dev) must - appear as it would in the - PACKAGES namespace before any - renaming of the output package by classes like debian.bbclass. + In the example, the package name + (${PN}-dev) must appear as it would + in the + PACKAGES + namespace before any renaming of the output package by + classes like debian.bbclass. + - Some automatic handling occurs around the RDEPENDS - variable: + In many cases you do not need to explicitly add dependencies + to RDEPENDS since some automatic + handling occurs: - shlibdeps: If a runtime - package contains a shared library (.so), the build - processes the library in order to determine other libraries to which it - is dynamically linked. - The build process adds these libraries to RDEPENDS - to create the runtime package. - pcdeps: If the package - ships a pkg-config information file, the build process - uses this file to add items to the RDEPENDS - variable to create the runtime packages. + shlibdeps: If + a run-time package contains a shared library + (.so), the build + processes the library in order to determine other + libraries to which it is dynamically linked. + The build process adds these libraries to + RDEPENDS when creating the run-time + package. + pcdeps: If + the package ships a pkg-config + information file, the build process uses this file + to add items to the RDEPENDS + variable to create the run-time packages. -- cgit v1.2.3-54-g00ecf