aboutsummaryrefslogtreecommitdiffstats
path: root/usermanual/reference/class_pkgconfig.xml
blob: 08df975b842f160f37c5c049caddfe78445f675c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?xml version="1.0" encoding="UTF-8"?>
<section id="pkgconfig_class" xreflabel="pkgconfig class">
  <title>pkgconfig class</title>

  <para>The pkgconfig class is for packages that install
  <command>&lt;pkg&gt;.pc</command> files that provide information about the
  build settings for the package via the use of the
  <command>pkg-config</command> command.</para>

  <para>Since the contents of the file is used at build time it is required to
  be copied into the staging area. All the actions performed by the class are
  appended to the <emphasis>do_stage</emphasis> task.</para>

  <para>The actions performed by the pkgconfig class are:</para>

  <orderedlist>
    <listitem>
      <para>Copies the <command>&lt;x&gt;.pc</command> files into the
      <command>${PKG_CONFIG_PATH}</command> directory;</para>
    </listitem>

    <listitem>
      <para>If the package is not native then it modifies the contents of the
      <command>&lt;x&gt;.pc</command> file in the
      <command>${PKG_CONFIG_PATH}</command> area to ensure that all the paths
      in the script refer to the staging area;</para>
    </listitem>
  </orderedlist>

  <para>A package is considered to be native it also inherits the native
  class.</para>

  <para>The class will search in <command>${S}</command>, and all it's
  subdirectories, for files that end in <command>.pc</command> (it will ignore
  those that end in <command>-uninstalled.pc)</command> and process them as
  described above. All that is required to use the class is the addition of
  pkgconfig in an inherit statement:<screen>inherit autotools pkgconfig</screen></para>
</section>