summaryrefslogtreecommitdiffstats
path: root/documentation
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2013-09-03 16:32:20 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-09-12 16:50:05 +0100
commitd3a849fdb415810e5adb290ef069b98b790cccf2 (patch)
tree4f45604157c8a41486bab04f751e565281aee06f /documentation
parent4265649931b0d65ec5a43016b3e98dd5fbf47bd9 (diff)
downloadpoky-d3a849fdb415810e5adb290ef069b98b790cccf2.tar.gz
ref-manual: Updated DEPENDS and RDEPENDS variable descriptions.
I have added more information to both these variables to help explain their use better. Based on email from Paul Eggleton. Each entry now features a simple example. (From yocto-docs rev: 1ec67c639f15259ac67d5591d1d7a23522b0a822) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r--documentation/ref-manual/ref-variables.xml61
1 files changed, 56 insertions, 5 deletions
diff --git a/documentation/ref-manual/ref-variables.xml b/documentation/ref-manual/ref-variables.xml
index a07ce4a298..4ffda80b96 100644
--- a/documentation/ref-manual/ref-variables.xml
+++ b/documentation/ref-manual/ref-variables.xml
@@ -968,6 +968,28 @@ Core layer for images cannot be removed
968 have been built and have their contents in the appropriate 968 have been built and have their contents in the appropriate
969 sysroots before the recipe's configure task is executed. 969 sysroots before the recipe's configure task is executed.
970 </para> 970 </para>
971
972 <para>
973 Consider this simple example for two recipes named "a" and
974 "b" that produce similarly named packages.
975 In this example, the <filename>DEPENDS</filename>
976 statement appears in the "a" recipe:
977 <literallayout class='monospaced'>
978 DEPENDS = "b"
979 </literallayout>
980 Here, the dependency is such that the
981 <filename>do_configure</filename> task for recipe "a"
982 depends on the <filename>do_populate_sysroot</filename>
983 task of recipe "b".
984 This means anything that recipe "b" puts into sysroot
985 is available when recipe "a" is configuring itself.
986 </para>
987
988 <para>
989 For information on runtime dependencies, see the
990 <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>
991 variable.
992 </para>
971 </glossdef> 993 </glossdef>
972 </glossentry> 994 </glossentry>
973 995
@@ -3750,7 +3772,7 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
3750 <glossentry id='var-RDEPENDS'><glossterm>RDEPENDS</glossterm> 3772 <glossentry id='var-RDEPENDS'><glossterm>RDEPENDS</glossterm>
3751 <glossdef> 3773 <glossdef>
3752 <para> 3774 <para>
3753 Lists a package's run-time dependencies (i.e. other packages) 3775 Lists a package's runtime dependencies (i.e. other packages)
3754 that must be installed in order for the built package to run 3776 that must be installed in order for the built package to run
3755 correctly. 3777 correctly.
3756 If a package in this list cannot be found during the build, 3778 If a package in this list cannot be found during the build,
@@ -3758,6 +3780,29 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
3758 </para> 3780 </para>
3759 3781
3760 <para> 3782 <para>
3783 When you use the <filename>RDEPENDS</filename> variable
3784 in a recipe, you are essentially stating that the recipe's
3785 <filename>do_build</filename> task depends on the existence
3786 of a specific package.
3787 Consider this simple example for two recipes named "a" and
3788 "b" that produce similarly named packages.
3789 In this example, the <filename>RDEPENDS</filename>
3790 statement appears in the "a" recipe:
3791 <literallayout class='monospaced'>
3792 RDEPENDS_${PN} = "b"
3793 </literallayout>
3794 Here, the dependency is such that the
3795 <filename>do_build</filename> task for recipe "a" depends
3796 on the <filename>do_package_write</filename> task
3797 of recipe "b".
3798 This means the package file for "b" must be available when
3799 the output for recipe "a" has been completely built.
3800 More importantly, package "a" will be marked as depending
3801 on package "b" in a manner that is understood by the
3802 package manager in use (i.e. rpm, opkg, or dpkg).
3803 </para>
3804
3805 <para>
3761 The names of the packages you list within 3806 The names of the packages you list within
3762 <filename>RDEPENDS</filename> must be the names of other 3807 <filename>RDEPENDS</filename> must be the names of other
3763 packages - they cannot be recipe names. 3808 packages - they cannot be recipe names.
@@ -3799,26 +3844,32 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
3799 3844
3800 <para> 3845 <para>
3801 In many cases you do not need to explicitly add 3846 In many cases you do not need to explicitly add
3802 run-time dependencies using 3847 runtime dependencies using
3803 <filename>RDEPENDS</filename> since some automatic 3848 <filename>RDEPENDS</filename> since some automatic
3804 handling occurs: 3849 handling occurs:
3805 <itemizedlist> 3850 <itemizedlist>
3806 <listitem><para><emphasis><filename>shlibdeps</filename></emphasis>: If 3851 <listitem><para><emphasis><filename>shlibdeps</filename></emphasis>: If
3807 a run-time package contains a shared library 3852 a runtime package contains a shared library
3808 (<filename>.so</filename>), the build 3853 (<filename>.so</filename>), the build
3809 processes the library in order to determine other 3854 processes the library in order to determine other
3810 libraries to which it is dynamically linked. 3855 libraries to which it is dynamically linked.
3811 The build process adds these libraries to 3856 The build process adds these libraries to
3812 <filename>RDEPENDS</filename> when creating the run-time 3857 <filename>RDEPENDS</filename> when creating the runtime
3813 package.</para></listitem> 3858 package.</para></listitem>
3814 <listitem><para><emphasis><filename>pcdeps</filename></emphasis>: If 3859 <listitem><para><emphasis><filename>pcdeps</filename></emphasis>: If
3815 the package ships a <filename>pkg-config</filename> 3860 the package ships a <filename>pkg-config</filename>
3816 information file, the build process uses this file 3861 information file, the build process uses this file
3817 to add items to the <filename>RDEPENDS</filename> 3862 to add items to the <filename>RDEPENDS</filename>
3818 variable to create the run-time packages. 3863 variable to create the runtime packages.
3819 </para></listitem> 3864 </para></listitem>
3820 </itemizedlist> 3865 </itemizedlist>
3821 </para> 3866 </para>
3867
3868 <para>
3869 For information on build-time dependencies, see the
3870 <link linkend='var-DEPENDS'><filename>DEPENDS</filename></link>
3871 variable.
3872 </para>
3822 </glossdef> 3873 </glossdef>
3823 </glossentry> 3874 </glossentry>
3824 3875