1 | <?xml version="1.0" encoding="ISO-8859-1"?> |
---|
2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" |
---|
3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ |
---|
4 | <!ENTITY % general-entities SYSTEM "../../general.ent"> |
---|
5 | %general-entities; |
---|
6 | ]> |
---|
7 | |
---|
8 | <sect1 id="ch-cross-tools-shadow"> |
---|
9 | <?dbhtml filename="shadow.html"?> |
---|
10 | |
---|
11 | <title>Shadow-&shadow-version; - Native</title> |
---|
12 | |
---|
13 | <indexterm zone="ch-cross-tools-shadow"> |
---|
14 | <primary sortas="a-Shadow">Shadow</primary> |
---|
15 | <secondary>cross tools</secondary> |
---|
16 | </indexterm> |
---|
17 | |
---|
18 | <sect2 role="installation"> |
---|
19 | <title>Installation of Shadow</title> |
---|
20 | |
---|
21 | <para>The following patch changes the hard-coded <filename>/etc</filename> |
---|
22 | in the sources to whatever was passed to configure. It also allows the |
---|
23 | utilities to run as a user other then root:</para> |
---|
24 | |
---|
25 | <screen><userinput>patch -Np1 -i ../&shadow-sysroot_hacks-patch;</userinput></screen> |
---|
26 | |
---|
27 | <para>The following value is added to <filename>config.cache</filename> to |
---|
28 | make sure that the <filename>passwd</filename> program is found:</para> |
---|
29 | |
---|
30 | <screen><userinput>cat > config.cache << EOF |
---|
31 | shadow_cv_passwd_dir=${CLFS}/bin" |
---|
32 | EOF</userinput></screen> |
---|
33 | |
---|
34 | <para>The following value causes Shadow to use its internal lckpwdf |
---|
35 | instead of the one provided by Glibc. The one provided by Glibc will |
---|
36 | attempt to modify the host system:</para> |
---|
37 | |
---|
38 | <screen><userinput>cat > config.cache << EOF |
---|
39 | ac_cv_func_lckpwdf=no |
---|
40 | EOF</userinput></screen> |
---|
41 | |
---|
42 | <para>Prepare Shadow for compilation:</para> |
---|
43 | |
---|
44 | <screen><userinput>./configure --prefix=${CLFS}/cross-tools --sbindir=${CLFS}/cross-tools/bin \ |
---|
45 | --sysconfdir=$CLFS/etc --disable-shared --without-libpam \ |
---|
46 | --without-audit --without-selinux --program-prefix=${CLFS_TARGET}- \ |
---|
47 | --cache-file=config.cache</userinput></screen> |
---|
48 | |
---|
49 | <para>Add the proper prefix to the <filename>passwd</filename> program:</para> |
---|
50 | |
---|
51 | <screen><userinput>cp config.h{,.orig} |
---|
52 | sed "/PASSWD_PROGRAM/s/passwd/${CLFS_TARGET}-&/" config.h.orig > config.h</userinput></screen> |
---|
53 | |
---|
54 | <para>Compile the package:</para> |
---|
55 | |
---|
56 | <screen><userinput>make</userinput></screen> |
---|
57 | |
---|
58 | <para>Install the package:</para> |
---|
59 | |
---|
60 | <screen><userinput>make install</userinput></screen> |
---|
61 | |
---|
62 | <note> |
---|
63 | <para>The tools built on this page will be used later in this book.</para> |
---|
64 | </note> |
---|
65 | |
---|
66 | </sect2> |
---|
67 | |
---|
68 | <sect2 role="content"> |
---|
69 | <title/> |
---|
70 | |
---|
71 | <para>Details on this package are located in <xref |
---|
72 | linkend="contents-shadow" role="."/></para> |
---|
73 | |
---|
74 | </sect2> |
---|
75 | |
---|
76 | </sect1> |
---|