mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-18 19:29:21 +01:00
Merge branch 'xry111/libxcrypt' into trunk
This commit is contained in:
commit
48834cf197
@ -970,8 +970,8 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils, Findutils, Gawk, GCC,
|
||||
Gettext, Glibc, GMP, Grep, M4, Make, MPC, MPFR, Patch, Perl, Sed,
|
||||
Tar, Texinfo, and Zstd</seg>
|
||||
Gettext, Glibc, GMP, Grep, Libxcrypt, M4, Make, MPC, MPFR, Patch,
|
||||
Perl, Sed, Tar, Texinfo, and Zstd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1885,6 +1885,47 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Libxcrypt dependency info -->
|
||||
<bridgehead renderas="sect2" id="libxcrypt-dep">Libxcrypt</bridgehead>
|
||||
|
||||
<segmentedlist id="libxcrypt-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils, Gawk, GCC, Glibc, Grep,
|
||||
Make, and Sed</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Glibc</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>GCC, Perl, Python,
|
||||
<phrase revision='sysv'>and </phrase>Shadow<phrase
|
||||
revision='systemd'>, and Systemd</phrase></seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Linux dependency info -->
|
||||
<bridgehead renderas="sect2" id="linux-dep">Linux</bridgehead>
|
||||
|
||||
@ -2455,14 +2496,14 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Gawk, GCC, GDBM, Glibc, Grep, Groff,
|
||||
Make, Sed, and Zlib</seg>
|
||||
Libxcrypt, Make, Sed, and Zlib</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="perl-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>GDBM and Glibc</seg>
|
||||
<seg>GDBM, Glibc, and Libxcrypt</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2621,7 +2662,7 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Expat, GCC, Gdbm, Gettext, Glibc,
|
||||
Grep, Libffi, Make, Ncurses, OpenSSL, Pkgconf, Sed, and
|
||||
Grep, Libffi, Libxcrypt, Make, Ncurses, OpenSSL, Pkgconf, Sed, and
|
||||
Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -2629,8 +2670,8 @@
|
||||
<segmentedlist id="python-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bzip2, Expat, Gdbm, Glibc, Libffi, Ncurses, OpenSSL, and
|
||||
Zlib</seg>
|
||||
<seg>Bzip2, Expat, Gdbm, Glibc, Libffi, Libxcrypt, Ncurses,
|
||||
OpenSSL, and Zlib</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2745,14 +2786,14 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Attr, Bash, Binutils, Coreutils, Diffutils, Findutils, Gawk,
|
||||
GCC, Gettext, Glibc, Grep, Libcap, Make, and Sed</seg>
|
||||
GCC, Gettext, Glibc, Grep, Libcap, Libxcrypt, Make, and Sed</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="shadow-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Glibc</seg>
|
||||
<seg>Glibc and Libxcrypt</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2826,15 +2867,15 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Attr, Bash, Binutils, Coreutils, Diffutils, Expat, Gawk,
|
||||
GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Meson, Pkgconf, Sed,
|
||||
Util-linux, and Zstd</seg>
|
||||
GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Libxcrypt, Meson,
|
||||
Pkgconf, Sed, Util-linux, and Zstd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="systemd-rundeps" revision='systemd'>
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Attr, Glibc, Libcap, and Util-linux</seg>
|
||||
<seg>Acl, Attr, Glibc, Libcap, Libxcrypt, and Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
|
@ -43,6 +43,10 @@
|
||||
<listitem>
|
||||
<para>2023-07-02</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Add libxcrypt-4.4.35. Fixes
|
||||
<ulink url='&lfs-ticket-root;5280'>#5280</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iproute2-6.4.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5277'>#5277</ulink>.</para>
|
||||
|
@ -304,6 +304,10 @@
|
||||
<title>Added:</title>
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
|
||||
<listitem>
|
||||
<para>Libxcrypt-&libxcrypt-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Pkgconf-&flit-core-version;</para>
|
||||
</listitem>
|
||||
|
@ -468,6 +468,15 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Libxcrypt (&libxcrypt-version;) - <token>&libxcrypt-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&libxcrypt-home;"/></para>
|
||||
<para>Download: <ulink url="&libxcrypt-url;"/></para>
|
||||
<para>MD5 sum: <literal>&libxcrypt-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Linux (&linux-version;) - <token>&linux-size;</token>:</term>
|
||||
<listitem>
|
||||
|
@ -91,6 +91,7 @@ cd build</userinput></screen>
|
||||
--build=$(../scripts/config.guess) \
|
||||
--enable-kernel=&min-kernel; \
|
||||
--with-headers=$LFS/usr/include \
|
||||
--disable-crypt \
|
||||
libc_cv_slibdir=/usr/lib</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
|
@ -96,6 +96,7 @@ cd build</userinput></screen>
|
||||
--disable-libatomic \
|
||||
--disable-libgomp \
|
||||
--disable-libquadmath \
|
||||
--disable-libsanitizer \
|
||||
--disable-libssp \
|
||||
--disable-libvtv \
|
||||
--enable-languages=c,c++</userinput></screen>
|
||||
@ -143,6 +144,19 @@ cd build</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--disable-libsanitizer</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable GCC sanitizer runtime libraries. They are not
|
||||
needed for the temporary installation. This switch is necessary
|
||||
to build GCC without
|
||||
<systemitem class='library'>libcrypt</systemitem> installed for
|
||||
the target. In <xref linkend='ch-tools-gcc-pass1'/> it was
|
||||
implied by <parameter>--disable-libstdcxx</parameter>, but now we
|
||||
have to explicitly pass it.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
@ -36,6 +36,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="attr.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="acl.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libcap.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libxcrypt.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="shadow.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gcc.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pkgconf.xml"/>
|
||||
|
@ -79,6 +79,7 @@ cd build</userinput></screen>
|
||||
--enable-kernel=&min-kernel; \
|
||||
--enable-stack-protector=strong \
|
||||
--with-headers=/usr/include \
|
||||
--disable-crypt \
|
||||
libc_cv_slibdir=/usr/lib</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
@ -489,7 +490,7 @@ mkdir -pv /etc/ld.so.conf.d</userinput></screen>
|
||||
<seg>ld-linux-x86-64.so.2, ld-linux.so.2,
|
||||
libBrokenLocale.{a,so}, libanl.{a,so},
|
||||
libc.{a,so}, libc_nonshared.a, libc_malloc_debug.so,
|
||||
libcrypt.{a,so}, libdl.{a,so.2}, libg.a, libm.{a,so},
|
||||
libdl.{a,so.2}, libg.a, libm.{a,so},
|
||||
libmcheck.a, libmemusage.so, libmvec.{a,so}, libnsl.so.1,
|
||||
libnss_compat.so, libnss_dns.so, libnss_files.so, libnss_hesiod.so,
|
||||
libpcprofile.so, libpthread.{a,so.0},
|
||||
@ -795,16 +796,6 @@ mkdir -pv /etc/ld.so.conf.d</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libcrypt">
|
||||
<term><filename class="libraryfile">libcrypt</filename></term>
|
||||
<listitem>
|
||||
<para>The cryptography library</para>
|
||||
<indexterm zone="ch-system-glibc libcrypt">
|
||||
<primary sortas="c-libcrypt">libcrypt</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libdl">
|
||||
<term><filename class="libraryfile">libdl</filename></term>
|
||||
<listitem>
|
||||
|
148
chapter08/libxcrypt.xml
Normal file
148
chapter08/libxcrypt.xml
Normal file
@ -0,0 +1,148 @@
|
||||
<?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-libxcrypt" role="wrap">
|
||||
<?dbhtml filename="libxcrypt.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
<productname>libxcrypt</productname>
|
||||
<productnumber>&libxcrypt-version;</productnumber>
|
||||
<address>&libxcrypt-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Libxcrypt-&libxcrypt-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-libxcrypt">
|
||||
<primary sortas="a-Libxcrypt">Libxcrypt</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>The Libxcrypt package contains a modern library for one-way
|
||||
hashing of passwords.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>&libxcrypt-fin-sbu;</seg>
|
||||
<seg>&libxcrypt-fin-du;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Libxcrypt</title>
|
||||
|
||||
<para>Prepare Libxcrypt for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--enable-hashes=strong,glibc \
|
||||
--enable-obsolete-api=no \
|
||||
--disable-static \
|
||||
--disable-failure-tokens</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-hashes=strong,glibc</parameter></term>
|
||||
<listitem>
|
||||
<para>Build strong hash algorithms recommended for security use
|
||||
cases, and the hash algorithms provided by traditional Glibc
|
||||
<systemitem class='library'>libcrypt</systemitem> for
|
||||
compatibility.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-obsolete-api=no</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable obsolete API functions. They are not needed for
|
||||
a modern Linux system built from source.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--disable-failure-tokens</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable failure token feature. It's needed for
|
||||
compatibility with the traditional hash libraries of some
|
||||
platforms, but a Linux system based on Glibc does not need
|
||||
it.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
||||
<note>
|
||||
|
||||
<para>The instructions above disabled obsolete API functions since
|
||||
no package installed by compiling from sources would link against
|
||||
them at runtime. However, the only known binary-only applications
|
||||
that link against these functions require ABI version 1. If you must
|
||||
have such libraries because of some binary-only application or to be
|
||||
to be compliant with LSB, build the package again with the following
|
||||
commands:</para>
|
||||
|
||||
<screen><userinput remap="nodump">make distclean
|
||||
./configure --prefix=/usr \
|
||||
--enable-hashes=strong,glibc \
|
||||
--enable-obsolete-api=glibc \
|
||||
--disable-static \
|
||||
--disable-failure-tokens
|
||||
make
|
||||
cp -av .libs/libcrypt.so.1* /usr/lib</userinput></screen>
|
||||
</note>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-libxcrypt" role="content">
|
||||
<title>Contents of Libxcrypt</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed libraries</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>libcrypt.so</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist>
|
||||
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="libcrypt">
|
||||
<term><filename class="libraryfile">libcrypt</filename></term>
|
||||
<listitem>
|
||||
<para>Contains functions to hash passwords</para>
|
||||
<indexterm zone="ch-system-libxcrypt libcrypt">
|
||||
<primary sortas="c-libcrypt">libcrypt</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
@ -430,6 +430,14 @@
|
||||
<!ENTITY libtool-fin-du "44 MB">
|
||||
<!ENTITY libtool-fin-sbu "1.4 SBU">
|
||||
|
||||
<!ENTITY libxcrypt-version "4.4.35">
|
||||
<!ENTITY libxcrypt-size "612 KB">
|
||||
<!ENTITY libxcrypt-url "&github;/besser82/libxcrypt/releases/download/&libxcrypt-version;/libxcrypt-&libxcrypt-version;.tar.xz">
|
||||
<!ENTITY libxcrypt-md5 "1d8487dfc43ee8e31a858456b868f836">
|
||||
<!ENTITY libxcrypt-home "&github;/besser82/libxcrypt/">
|
||||
<!ENTITY libxcrypt-fin-du "16 MB">
|
||||
<!ENTITY libxcrypt-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY linux-major-version "6">
|
||||
<!ENTITY linux-minor-version "4">
|
||||
<!ENTITY linux-patch-version "1">
|
||||
|
@ -373,6 +373,17 @@
|
||||
suites in other LFS packages.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Libxcrypt</para>
|
||||
|
||||
<para>This package provides the
|
||||
<systemitem class='library'>libcrypt</systemitem> library
|
||||
needed by various packages (notably, Shadow) for hashing passwords.
|
||||
It replaces the obsolete
|
||||
<systemitem class='library'>libcrypt</systemitem> implmentation in
|
||||
Glibc.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Linux Kernel</para>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user