aboutsummaryrefslogtreecommitdiffstats
path: root/chapter08/pkgconf.xml
blob: fd61b4d400e3b0f5f65bee99bb62203eef89ccb8 (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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../general.ent">
  %general-entities;
]>

<sect1 id="ch-system-pkgconf" role="wrap">
  <?dbhtml filename="pkgconf.html"?>

  <sect1info condition="script">
    <productname>pkgconf</productname>
    <productnumber>&pkgconf-version;</productnumber>
    <address>&pkgconf-url;</address>
  </sect1info>

  <title>Pkgconf-&pkgconf-version;</title>

  <indexterm zone="ch-system-pkgconf">
    <primary sortas="a-pkgconf">Pkgconf</primary>
  </indexterm>

  <sect2 role="package">
    <title/>

    <para>The pkgconf package is a 
    successor to pkg-config and contains a tool for passing the include path
    and/or library paths to build tools during the configure and make phases
    of package installations.</para>

    <segmentedlist>
      <segtitle>&buildtime;</segtitle>
      <segtitle>&diskspace;</segtitle>

      <seglistitem>
        <seg>&pkgconf-fin-sbu;</seg>
        <seg>&pkgconf-fin-du;</seg>
      </seglistitem>
    </segmentedlist>

  </sect2>

  <sect2 role="installation">

    <title>Installation of Pkgconf</title>
<!--
    <para>Pkgconf-2.0.0 explicitly errors when attempting to run
    <option>- -modversion</option> with multiple arguments, even if these
    arguments are constraints for the same package.  This breaks many
    packages in BLFS. Run this sed to reinstate the old
    output for pkgconf:</para>

     <screen><userinput remap="pre">sed -i '1330,1336s|^|//|' cli/main.c</userinput></screen>
-->
    <para>Prepare Pkgconf for compilation:</para>

<screen><userinput remap="configure">./configure --prefix=/usr              \
            --disable-static           \
            --docdir=/usr/share/doc/pkgconf-&pkgconf-version;</userinput></screen>

    <para>Compile the package:</para>

<screen><userinput remap="make">make</userinput></screen>

    <para>Install the package:</para>

<screen><userinput remap="install">make install</userinput></screen>

    <para>To maintain compatibility with the original Pkg-config create two
    symlinks:</para>

<screen><userinput remap="install">ln -sv pkgconf   /usr/bin/pkg-config
ln -sv pkgconf.1 /usr/share/man/man1/pkg-config.1</userinput></screen>

  </sect2>

  <sect2 id="contents-pkgconf" role="content">
    <title>Contents of Pkgconf</title>

    <segmentedlist>
      <segtitle>Installed programs</segtitle>
      <segtitle>Installed library</segtitle>
      <segtitle>Installed directory</segtitle>

      <seglistitem>
        <seg>pkgconf, pkg-config (link to pkgconf), and bomtool</seg>
        <seg>libpkgconf.so</seg>
        <seg>/usr/share/doc/pkgconf-&pkgconf-version;</seg>
      </seglistitem>
    </segmentedlist>

    <variablelist>
      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
      <?dbfo list-presentation="list"?>
      <?dbhtml list-presentation="table"?>

      <varlistentry id="pkgconf">
        <term><command>pkgconf</command></term>
        <listitem>
          <para>Returns meta information for the specified library or
          package</para>
          <indexterm zone="ch-system-pkgconf pkgconf">
            <primary sortas="b-pkgconf">pkgconf</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="bomtool">
        <term><command>bomtool</command></term>
        <listitem>
          <para>Generates a Software Bill Of Materials from pkg-config .pc
          files</para>
          <indexterm zone="ch-system-pkgconf bomtool">
            <primary sortas="b-bomtool">bomtool</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="libpkgconf">
        <term><filename class="libraryfile">libpkgconf</filename></term>
        <listitem>
          <para>Contains most of pkgconf's functionality, while allowing
          other tools like IDEs and compilers to use its frameworks</para>
          <indexterm zone="ch-system-pkgconf libpkgconf">
            <primary sortas="c-libpkgconf">libpkgconf</primary>
          </indexterm>
        </listitem>
      </varlistentry>
    </variablelist>
  </sect2>

</sect1>