Ignore:
Timestamp:
Apr 24, 2017, 10:21:28 AM (7 years ago)
Author:
William Harrington <kb0iic@…>
Branches:
master, systemd
Children:
0fa3c9f
Parents:
c831ac4
Message:

Update Systemd to 233. Remove some configure options, add some new configure options. Tidy up the xml. Remove the compat-libs patch.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BOOK/final-system/common/systemd.xml

    rc831ac4 r216be86  
    2525    <title>Installation of Systemd</title>
    2626
    27     <para os="p1">Systemd 209 merged several libraries into
    28     <filename class="libraryfile">libsystemd</filename>, but some packages
    29     that use systemd still expect those separate libraries. Apply a patch
    30     to allow backwards compatibility with these packages by
    31     installing Pkg-config files for the old libraries:</para>
    32 
    33 <screen os="p2"><userinput>patch -Np1 -i ../&systemd-compat-patch;</userinput></screen>
    34 
    3527    <para os="s1">Prevent the <filename>Makefile</filename> from trying to run
    3628    <command>setcap</command> on <command>systemd-detect-virt</command>,
     
    4638<screen os="s4"><userinput>sed -i '/timesyncd.conf/d' src/timesync/timesyncd.conf.in</userinput></screen>
    4739
    48     <para os="s5">By default, <command>systemd-fsck</command> will run
    49     <filename>/sbin/fsck</filename> with the <option>-l</option> option, which
    50     applies an <function>flock</function> on the file system being checked.
    51     This can conflict with an <function>flock</function> that
    52     systemd itself puts on the file system, which could result in problems
    53     booting. <command>fsck</command> will be fixed to avoid this problem in a
    54     future release of Util-linux, but for now we will work around the issue by
    55     simply preventing <command>systemd-fsck</command> from using <option>-l</option>:</para>
    56 
    57 <screen os="s6"><userinput>sed -i '/-l/d' src/fsck/fsck.c</userinput></screen>
    58 
    5940    <para os="a">Prepare systemd for compilation:</para>
     41
     42    <para os="cc1">Create a file to declare some variables</para>
     43
     44    <screen os="cc2"><userinput>cat &gt; config.cache &lt;&lt; "EOF"
     45        KILL="/bin/kill"
     46        MOUNT_PATH="/bin/mount"
     47        UMOUNT_PATH="/bin/umount"
     48        SULOGIN="/sbin/sulogin"
     49        XSLTPROC="/usr/bin/xsltproc"
     50        EOF</userinput></screen>
    6051
    6152<screen os="b"><userinput>./configure \
     
    6859    --with-rootlibdir=/lib \
    6960    --enable-split-usr \
    70     --disable-gudev \
     61    --disable-firstboot \
     62    --disable-ldconfig \
     63    --disable-lto \
     64    --disable-sysusers \
     65    --with-default-dnssec=no \
    7166    --with-kbd-loadkeys=/bin/loadkeys \
    7267    --with-kbd-setfont=/bin/setfont \
    7368    --with-dbuspolicydir=/etc/dbus-1/system.d \
    74     --with-dbusinterfacedir=/usr/share/dbus-1/interfaces \
    7569    --with-dbussessionservicedir=/usr/share/dbus-1/services \
    7670    --with-dbussystemservicedir=/usr/share/dbus-1/system-services \
    77     cc_cv_CFLAGS__flto=no</userinput></screen>
     71    --config-cache</userinput></screen>
    7872
    7973    <variablelist os="c">
    8074      <title>The meaning of the configure options:</title>
     75
     76      <varlistentry>
     77        <term><parameter>--config-cache</parameter></term>
     78        <listitem>
     79          <para>Use the created <filename>config.cache</filename>.</para>
     80        </listitem>
     81      </varlistentry>
    8182
    8283      <varlistentry>
     
    99100
    100101      <varlistentry>
    101         <term><parameter>--disable-gudev</parameter></term>
    102         <listitem>
    103           <para>This switch prevents systemd from building
    104           <filename class="libraryfile">libgudev</filename> as it requires
    105           Glib, which is not installed in CLFS.</para>
     102        <term><parameter>--disable-firstboot</parameter></term>
     103        <listitem>
     104          <para>This switch prevents installation of systemd services
     105            responsible for setting up the system for the first time.
     106            They are not useful for CLFS as everything is done manually.
     107          </para>
     108        </listitem>
     109      </varlistentry>
     110
     111      <varlistentry>
     112        <term><parameter>--disable-ldconfig</parameter></term>
     113        <listitem>
     114          <para>This switch prevents installation of a systemd unit that runs
     115          <command>ldconfig</command> at boot, and increases boot time.
     116          While it may be not useful for source distributions like CLFS,
     117          this option may be removed.</para>
     118        </listitem>
     119      </varlistentry>
     120
     121      <varlistentry>
     122        <term><parameter>--disable-lto</parameter></term>
     123        <listitem>
     124          <para>This prevents the build system from using GCC's Link-time
     125          optimization (LTO), to ensure that systemd's binaries will not try
     126          to link to <filename class="libraryfile">libgcc_s</filename></para>
     127        </listitem>
     128      </varlistentry>
     129
     130      <varlistentry>
     131        <term><parameter>--disable-sysusers</parameter></term>
     132        <listitem>
     133            <para>This switch prevents install of systemd services which setup
     134            the previously created <filename>/etc/group</filename> and
     135            <filename>/etc/passwd</filename> files.</para>
    106136        </listitem>
    107137      </varlistentry>
     
    116146
    117147      <varlistentry>
    118         <term><parameter>cc_cv_CFLAGS__flto=no</parameter></term>
    119         <listitem>
    120           <para>This prevents the build system from using GCC's Link-time
    121           optimization (LTO), to ensure that systemd's binaries will not try
    122           to link to <filename class="libraryfile">libgcc_s</filename>.</para>
     148        <term><parameter>--with-default-dnssec=no</parameter></term>
     149        <listitem>
     150          <para>This switch turns off the experimental DNNSEC support.</para>
    123151        </listitem>
    124152      </varlistentry>
     
    132160    <para os="f">Prevent a broken test case from running:</para>
    133161
    134 <screen os="g"><userinput remap="test">sed -e "s:test/udev-test.pl::g" \
    135     -e "s:test-bus-cleanup\$(EXEEXT) ::g" \
    136     -e "s:test-bus-gvariant\$(EXEEXT) ::g" \
    137     -i Makefile</userinput></screen>
     162<screen os="g"><userinput remap="test">sed -e 's@test/udev-test.pl @@' \
     163        -e 's@test-copy$(EXEEXT) @@' \
     164        -i Makefile.in
     165</userinput></screen>
    138166
    139167    <para os="h">To test the results, issue:</para>
    140168
    141 <screen os="i"><userinput remap="test">make check</userinput></screen>
     169    <screen os="i"><userinput remap="test">
     170            sed -i "s:minix:ext4:g" src/test/test-path-util.c
     171            make check</userinput></screen>
    142172
    143173    <para os="j">Install the package:</para>
     
    148178
    149179<screen os="m"><userinput>install -v -m644 man/*.html /usr/share/doc/systemd-&systemd-version;</userinput></screen>
    150 
    151     <para os="n">Move the
    152     <filename class="libraryfile">nss_myhostname</filename> library to
    153     <filename class="directory">/lib</filename>:</para>
    154 
    155 <screen os="o"><userinput>mv -v /usr/lib/libnss_myhostname.so.2 /lib</userinput></screen>
    156180
    157181    <para os="p">Remove an unnecessary directory:</para>
     
    165189done
    166190ln -sfv ../lib/systemd/systemd /sbin/init</userinput></screen>
    167 
    168     <para os="t">Modify a configuration file which references a group that
    169     doesn't exist:</para>
    170 
    171 <screen os="u"><userinput>sed -i "s@root lock@root root@g" /usr/lib/tmpfiles.d/legacy.conf</userinput></screen>
    172191
    173192  </sect2>
Note: See TracChangeset for help on using the changeset viewer.