diff options
| -rw-r--r-- | documentation/ref-manual/ref-variables.xml | 57 |
1 files changed, 42 insertions, 15 deletions
diff --git a/documentation/ref-manual/ref-variables.xml b/documentation/ref-manual/ref-variables.xml index 9d53fea0f3..99f3e03446 100644 --- a/documentation/ref-manual/ref-variables.xml +++ b/documentation/ref-manual/ref-variables.xml | |||
| @@ -2787,28 +2787,55 @@ | |||
| 2787 | <glossdef> | 2787 | <glossdef> |
| 2788 | <para role="glossdeffirst"> | 2788 | <para role="glossdeffirst"> |
| 2789 | <!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> --> | 2789 | <!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> --> |
| 2790 | Lists a recipe's build-time dependencies | 2790 | Lists a recipe's build-time dependencies. |
| 2791 | (i.e. other recipe files). | 2791 | These dependencies are on other recipes whose |
| 2792 | The system ensures that all the dependencies listed | 2792 | contents (e.g. headers and shared libraries) are needed |
| 2793 | have been built and have their contents in the appropriate | 2793 | by the recipe at build time. |
| 2794 | sysroots before the recipe's configure task is executed. | ||
| 2795 | </para> | 2794 | </para> |
| 2796 | 2795 | ||
| 2797 | <para> | 2796 | <para> |
| 2798 | Consider this simple example for two recipes named "a" and | 2797 | As an example, consider a recipe <filename>foo</filename> |
| 2799 | "b" that produce similarly named packages. | 2798 | that contains the following assignment: |
| 2800 | In this example, the <filename>DEPENDS</filename> | ||
| 2801 | statement appears in the "a" recipe: | ||
| 2802 | <literallayout class='monospaced'> | 2799 | <literallayout class='monospaced'> |
| 2803 | DEPENDS = "b" | 2800 | DEPENDS = "bar" |
| 2804 | </literallayout> | 2801 | </literallayout> |
| 2805 | Here, the dependency is such that the | 2802 | The practical effect of the previous assignment is that |
| 2803 | all files installed by <filename>bar</filename> will be | ||
| 2804 | available in the appropriate staging sysroot (i.e. | ||
| 2805 | <link linkend='var-STAGING_DIR'><filename>STAGING_DIR*</filename></link> | ||
| 2806 | variables) by the time the | ||
| 2806 | <link linkend='ref-tasks-configure'><filename>do_configure</filename></link> | 2807 | <link linkend='ref-tasks-configure'><filename>do_configure</filename></link> |
| 2807 | task for recipe "a" depends on the | 2808 | task for <filename>foo</filename> runs. |
| 2809 | This mechanism is implemented by having | ||
| 2810 | <filename>do_configure</filename> depend on the | ||
| 2808 | <link linkend='ref-tasks-populate_sysroot'><filename>do_populate_sysroot</filename></link> | 2811 | <link linkend='ref-tasks-populate_sysroot'><filename>do_populate_sysroot</filename></link> |
| 2809 | task of recipe "b". | 2812 | task of each recipe listed in <filename>DEPENDS</filename> |
| 2810 | This means anything that recipe "b" puts into sysroot | 2813 | through a |
| 2811 | is available when recipe "a" is configuring itself. | 2814 | <filename>[</filename><ulink url='&YOCTO_DOCS_BB_URL;#variable-flags'><filename>deptask</filename></ulink><filename>]</filename> |
| 2815 | declaration in the | ||
| 2816 | <link linkend='ref-classes-base'><filename>base</filename></link> | ||
| 2817 | class. | ||
| 2818 | <note> | ||
| 2819 | It seldom is necessary to reference, for example, | ||
| 2820 | <filename>STAGING_DIR_HOST</filename> explicitly. | ||
| 2821 | The standard classes and build-related variables are | ||
| 2822 | configured to automatically use the appropriate staging | ||
| 2823 | sysroots. | ||
| 2824 | </note> | ||
| 2825 | As another example, <filename>DEPENDS</filename> can also | ||
| 2826 | be used to add utilities that run on the build machine | ||
| 2827 | during the build. | ||
| 2828 | For example, a recipe that makes use of a code generator | ||
| 2829 | built by the recipe <filename>codegen</filename> might have | ||
| 2830 | the following: | ||
| 2831 | <literallayout class='monospaced'> | ||
| 2832 | DEPENDS = "codegen-native" | ||
| 2833 | </literallayout> | ||
| 2834 | For more information, see the | ||
| 2835 | <link linkend='ref-classes-native'><filename>native</filename></link> | ||
| 2836 | class and the | ||
| 2837 | <link linkend='var-EXTRANATIVEPATH'><filename>EXTRANATIVEPATH</filename></link> | ||
| 2838 | variable. | ||
| 2812 | <note> | 2839 | <note> |
| 2813 | <title>Notes</title> | 2840 | <title>Notes</title> |
| 2814 | <itemizedlist> | 2841 | <itemizedlist> |
