浏览代码

Several modifications to Glibc - Add FHS patch that removes usage of /var/db and replaces it with /var/cache/nscd for nscd and /var/lib/nss_db for nss_db. Set libexecdir to /usr/lib istead of /usr/lib/glibc. Add instructions to install nscd configuration file and runtime directory.

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/systemd/BOOK@10120 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Krejzi 12 年之前
父节点
当前提交
eea40552f7
共有 4 个文件被更改,包括 50 次插入13 次删除
  1. 16 1
      chapter01/changelog.xml
  2. 28 10
      chapter06/glibc.xml
  3. 2 2
      general.ent
  4. 4 0
      patches.ent

+ 16 - 1
chapter01/changelog.xml

@@ -36,7 +36,22 @@
     </listitem>
 -->
     <listitem>
-      <para>2013-02-06</para>
+      <para>2013-02-11</para>
+      <itemizedlist>
+        <listitem>
+          <para>[krejzi] - Added a patch to Glibc that removes
+          references to /var/db and replaces it with FHS-compliant
+          location.</para>
+        </listitem>
+        <listitem>
+        <para>[krejzi] - Added instructions to install nscd configuration
+          file and runtime directory.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
+      <para>2013-02-10</para>
       <itemizedlist>
         <listitem>
           <para>[krejzi] - Modified Util-Linux instructions to

+ 28 - 10
chapter06/glibc.xml

@@ -61,6 +61,13 @@
     Glibc autoconf tests would give false results and defeat the goal
     of achieving a clean build.</para>
 
+    <para>Some of the Glibc programs use non-FHS compilant
+    <filename class="directory">/var/db</filename> directory
+    to store their runtime data. Apply the following patch to make such programs
+    store their runtime data in the FHS-compliant locations:</para>
+
+<screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen>
+
     <para>The Glibc documentation recommends building Glibc outside of the source
     directory in a dedicated build directory:</para>
 
@@ -69,22 +76,26 @@ cd ../glibc-build</userinput></screen>
 
     <para>Prepare Glibc for compilation:</para>
 
-<screen><userinput remap="configure">../glibc-&glibc-version;/configure  \
-    --prefix=/usr          \
-    --disable-profile      \
-    --enable-kernel=2.6.25 \
-    --libexecdir=/usr/lib/glibc</userinput></screen>
+<!-- We would get /usr/lib/glibc/getconf instead of /usr/lib/getconf and
+     /usr/lib/getconf was used before. Other distros seem to use same
+     libexecdir -->
+<screen><userinput remap="configure">../glibc-&glibc-version;/configure   \
+    --prefix=/usr         \
+    --libexecdir=/usr/lib \
+    --disable-profile     \
+    --enable-kernel=2.6.25</userinput></screen>
 
     <variablelist>
       <title>The meaning of the new configure options:</title>
 
       <varlistentry>
-        <term><parameter>--libexecdir=/usr/lib/glibc</parameter></term>
+        <term><parameter>--libexecdir=/usr/lib</parameter></term>
         <listitem>
           <para>This changes the location of the <command>pt_chown</command>
-          program from its default of <filename
+          program and <filename class="directory">getconf</filename> directory
+          from their default install location of <filename
           class="directory">/usr/libexec</filename> to <filename
-          class="directory">/usr/lib/glibc</filename>.</para>
+          class="directory">/usr/lib</filename>.</para>
         </listitem>
       </varlistentry>
 
@@ -162,6 +173,12 @@ grep Error glibc-check-log</userinput></screen>
 cp -v ../glibc-&glibc-version;/sunrpc/rpcsvc/*.h /usr/include/rpcsvc
 cp -v ../glibc-&glibc-version;/nis/rpcsvc/*.h /usr/include/rpcsvc</userinput></screen>
 
+    <para>Install the configuration file and runtime directory for
+    <command>nscd</command>:</para>
+
+<screen><userinput remap="install">install -v -m644 ../glibc-&glibc-version;/nscd/nscd.conf /etc/nscd.conf &amp;&amp;
+install -v -dm755 /var/cache/nscd</userinput></screen>
+
     <para>The locales that can make the system respond in a different language
     were not installed by the above command. None of the locales are required,
     but if some of them are missing, test suites of the future packages would
@@ -425,8 +442,9 @@ mkdir /etc/ld.so.conf.d</userinput></screen>
         /usr/include/netipx, /usr/include/netiucv, /usr/include/netpacket,
         /usr/include/netrom, /usr/include/netrose, /usr/include/nfs,
         /usr/include/protocols, /usr/include/rpc, /usr/include/rpcsvc,
-        /usr/include/sys, /usr/lib/audit, /usr/lib/gconv, /usr/lib/glibc,
-        /usr/lib/locale, /usr/share/i18n, /usr/share/zoneinfo, /var/db</seg>
+        /usr/include/sys, /usr/lib/audit, /usr/lib/gconv, /usr/lib/getconf,
+        /usr/lib/locale, /usr/share/i18n, /usr/share/zoneinfo, /var/cache/nscd,
+        and /var/lib/nss_db</seg>
       </seglistitem>
     </segmentedlist>
 

+ 2 - 2
general.ent

@@ -1,5 +1,5 @@
-<!ENTITY version "SYSTEMD-20130210">
-<!ENTITY releasedate "February 10, 2013">
+<!ENTITY version "SYSTEMD-20130211">
+<!ENTITY releasedate "February 11, 2013">
 <!ENTITY copyrightdate "1999-2013"><!-- jhalfs needs a literal dash, not &ndash; -->
 <!ENTITY milestone "7.3">
 <!ENTITY generic-version "systemd"> <!-- Use "development", "testing", or "x.y[-pre{x}]" -->

+ 4 - 0
patches.ent

@@ -26,6 +26,10 @@
 <!ENTITY flex-bison-patch-md5 "d5b001ef9bdbbe32e2f27576d97d8ff0">
 <!ENTITY flex-bison-patch-size "2.8 KB">
 
+<!ENTITY glibc-fhs-patch "glibc-&glibc-version;-fhs-1.patch">
+<!ENTITY glibc-fhs-patch-md5 "9a5997c3452909b1769918c759eff8a2">
+<!ENTITY glibc-fhs-patch-size "2.8 KB">
+
 <!ENTITY kbd-backspace-patch "kbd-&kbd-version;-backspace-1.patch">
 <!ENTITY kbd-backspace-patch-md5 "f75cca16a38da6caa7d52151f7136895">
 <!ENTITY kbd-backspace-patch-size "12 KB">