[blfs-book] r11083 - trunk/BOOK/general/prog

krejzi at higgs.linuxfromscratch.org krejzi at higgs.linuxfromscratch.org
Sun Mar 10 12:22:54 PDT 2013


Author: krejzi
Date: Sun Mar 10 12:22:54 2013
New Revision: 11083

Log:
Add R600 backend patches to LLVM 3.2 in order to enable radeonsi in Mesa again.

Modified:
   trunk/BOOK/general/prog/llvm.xml

Modified: trunk/BOOK/general/prog/llvm.xml
==============================================================================
--- trunk/BOOK/general/prog/llvm.xml	Sun Mar 10 12:13:21 2013	(r11082)
+++ trunk/BOOK/general/prog/llvm.xml	Sun Mar 10 12:22:54 2013	(r11083)
@@ -4,6 +4,8 @@
   <!ENTITY % general-entities SYSTEM "../../general.ent">
   %general-entities;
 
+  <!ENTITY tstellar-llvm  "http://people.freedesktop.org/~tstellar/llvm/3.2">
+
   <!ENTITY llvm-download-http "http://llvm.org/releases/&llvm-version;/llvm-&llvm-version;.src.tar.gz">
   <!ENTITY llvm-download-ftp  " ">
   <!ENTITY llvm-md5sum        "71610289bbc819e3e15fdd562809a2d7">
@@ -98,36 +100,57 @@
       </listitem>
     </itemizedlist>
 
+    <bridgehead renderas="sect3">Recommended Patches</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          LLVM R600 Backend:
+          <ulink url="&tstellar-llvm;/R600-Mesa-9.1.patch"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          LLVM R600 Backend MD5 sum: a6f9ec35fa847c4298213ab28fb868ce
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          LLVM R600 Backend Fixes:
+          <ulink url="&patch-root;/llvm-&llvm-version;-r600_fixes-1.patch"/>
+        </para>
+      </listitem>
+    </itemizedlist>
+
     <bridgehead renderas="sect3">Optional Downloads</bridgehead>
     <itemizedlist spacing="compact">
       <listitem>
         <para>
-          Clang Download (HTTP): <ulink url="&clang-download-http;"/>
+          Clang: <ulink url="&clang-download-http;"/>
         </para>
       </listitem>
       <listitem>
         <para>
-          Clang Download MD5 sum: &clang-md5sum;
+          Clang MD5 sum: &clang-md5sum;
         </para>
       </listitem>
       <listitem>
         <para>
-          Clang Download size: &clang-size;
+          Clang size: &clang-size;
         </para>
       </listitem>
       <listitem>
         <para>
-          Compiler RT Download (HTTP): <ulink url="&compiler-rt-download-http;"/>
+          Compiler RT: <ulink url="&compiler-rt-download-http;"/>
         </para>
       </listitem>
       <listitem>
         <para>
-          Compiler RT Download MD5 sum: &compiler-rt-md5sum;
+          Compiler RT MD5 sum: &compiler-rt-md5sum;
         </para>
       </listitem>
       <listitem>
         <para>
-          Compiler RT Download size: &compiler-rt-size;
+          Compiler RT size: &compiler-rt-size;
         </para>
       </listitem>
     </itemizedlist>
@@ -173,6 +196,14 @@
     -i tools/clang/lib/Driver/Tools.cpp</userinput></screen>
 
     <para>
+      If you have downloaded the recommended patches, apply them by
+      running the following commands:
+    </para>
+
+<screen><userinput>patch -Np1 -i ../R600-Mesa-9.1.patch &&
+patch -Np1 -i ../llvm-&llvm-version;-r600_fixes-1.patch</userinput></screen>
+
+    <para>
       Install <application>LLVM</application> by running the following
       commands:
     </para>
@@ -188,7 +219,8 @@
             --enable-targets=all       \
             --disable-assertions       \
             --disable-debug-runtime    \
-            --disable-expensive-checks &&
+            --disable-expensive-checks \
+            --enable-experimental-targets=R600 &&
 make</userinput></screen>
 
     <para>
@@ -221,6 +253,52 @@
 
   </sect2>
 
+  <sect2 role="commands">
+    <title>Command Explanations</title>
+
+    <para>
+      <parameter>--enable-libffi</parameter>: This switch enables
+      <application>LLVM</application> to use
+      <application>libffi</application>. Remove if you did not
+      install <application>libffi</application>.
+    </para>
+
+    <para>
+      <parameter>--enable-optimized</parameter>: This switch enables
+      compiler optimizations in order to speed up the code and reduce
+      its size.
+    </para>
+
+    <para>
+      <parameter>--enable-shared</parameter>: This switch enables
+      building of the <application>LLVM</application> shared
+      library which contains all of static libraries linked into
+      single library.
+    </para>
+
+    <para>
+      <parameter>--enable-targets=all</parameter>: This switch ensures
+      that all <application>LLVM</application> targets are built.
+    </para>
+
+    <para>
+      <parameter>--disable-*</parameter>: These switches disable
+      features which are used for debugging and are not necesary
+      on a production system.
+    </para>
+
+    <para>
+      <parameter>--enable-experimental-targets=R600</parameter>:
+      This switch enables R600 target which is required by
+      <application>Mesa</application> to build the radeonsi
+      3D driver. It can be used for r600
+      <application>LLVM</application> backend and OpenCL
+      state tracker in <application>Mesa</application>. Remove
+      it if you did not apply the recommended patches.
+    </para>
+
+  </sect2>
+
   <sect2 role="content">
     <title>Contents</title>
 



More information about the blfs-book mailing list