aboutsummaryrefslogtreecommitdiffstats
path: root/chapter06/file.xml
blob: c9fbe0e6f34b07ebaddcbe9d3d8649e2ce4dccc6 (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
<?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-tools-file" role="wrap">
  <?dbhtml filename="file.html"?>

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

  <title>File-&file-version;</title>

  <indexterm zone="ch-tools-file">
    <primary sortas="a-File">File</primary>
    <secondary>tools</secondary>
  </indexterm>

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

    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
    href="../chapter08/file.xml"
    xpointer="xpointer(/sect1/sect2[1]/para[1])"/>

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

      <seglistitem>
        <seg>&file-tmp-sbu;</seg>
        <seg>&file-tmp-du;</seg>
      </seglistitem>
    </segmentedlist>

  </sect2>

  <sect2 role="installation">
    <title>Installation of File</title>

    <para>
       The <command>file</command> command on the build host needs 
       to be same version as the one we are building in order to 
       create the signature file. Run the following commands to build it:
    </para>

<screen><userinput remap="pre">mkdir build
pushd build
  ../configure
  make
popd</userinput></screen>

    <para>Prepare File for compilation:</para>

<screen><userinput remap="configure">./configure --prefix=/usr --host=$LFS_TGT --build=$(./config.guess)</userinput></screen>

<!-- devs: if using - -build here, the build system wants to compile
     the signature file with "file" on the build system, but stops if it is not
     the same version. One possibility would be to build "file" on the build
     system first, but it is simpler to have the system think it is not
     cross-compiling, and use the just built "file". -->
    <para>Compile the package:</para>

<screen><userinput remap="make">make FILE_COMPILE=$(pwd)/build/src/file</userinput></screen>

    <para>Install the package:</para>

<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>

  </sect2>

  <sect2 role="content">
    <title/>
    <para>Details on this package are located in <xref linkend="contents-file" role="."/></para>

  </sect2>

</sect1>