Fix LLVM and mesa instructions for LLVM-3.9

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@17757 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
Pierre Labastie 2016-09-13 16:56:10 +00:00
parent 295ffeda84
commit 4e845a440f
2 changed files with 34 additions and 51 deletions

View File

@ -207,7 +207,7 @@ CC=gcc CXX=g++ \
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DLLVM_ENABLE_FFI=ON \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_SHARED_LIBS=ON \
-DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_TARGETS_TO_BUILD="host;AMDGPU" \
-Wno-dev .. &&
make</userinput></screen>
@ -217,9 +217,6 @@ make</userinput></screen>
to generate the html documentation and manual pages, issue the
following commands:
</para>
<!-- The following command still works but let's try the next one
<screen><userinput>make -C ../docs -f Makefile.sphinx man</userinput></screen>
-->
<screen><userinput>cmake -DLLVM_ENABLE_SPHINX=ON \
-DSPHINX_WARNINGS_AS_ERRORS=OFF \
-Wno-dev .. &amp;&amp;
@ -242,29 +239,6 @@ make docs-llvm-html docs-llvm-man</userinput></screen>
<screen role="root"><userinput>make install</userinput></screen>
<!-- version 3.8.0: Clang-analyser is built and installed by default
<para>
If you had <xref linkend="python2"/> installed and you have
built <application>Clang</application>, install the
<application>Clang Analyzer</application> by running the
following command as the
<systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>install -v -dm755 /usr/lib/clang-analyzer &amp;&amp;
for prog in scan-build scan-view
do
cp -rfv ../tools/clang/tools/$prog /usr/lib/clang-analyzer/ &amp;&amp;
ln -sfv ../lib/clang-analyzer/$prog/$prog /usr/bin/
done
unset prog &amp;&amp;
ln -sfv /usr/bin/clang \
/usr/lib/clang-analyzer/scan-build/ &amp;&amp;
mv -v /usr/lib/clang-analyzer/scan-build/scan-build.1 \
/usr/share/man/man1/</userinput></screen>
-->
<para>
If you have built the documentation, install it by running the
following command as the <systemitem class="username">root</systemitem>
@ -289,12 +263,6 @@ cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</us
<sect2 role="commands">
<title>Command Explanations</title>
<!--
<para>
<command>sed -e ... Makefile.config.in</command>: This sed fixes
location of the installed documentation.
</para>
-->
<para>
<parameter>-DLLVM_ENABLE-FFI=ON</parameter>: This switch enables
<application>LLVM</application> to use
@ -302,6 +270,12 @@ cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</us
install <application>libffi</application>.
</para>
<para>
<parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter>: builds libraries as
static and links all of them into an unique shared one. This is the
recommended way of building a shared library.
</para>
<para>
<parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch enables
compiler optimizations in order to speed up the code and reduce its size.
@ -309,12 +283,6 @@ cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</us
system.
</para>
<para>
<parameter>-DBUILD_SHARED_LIBS=ON</parameter>: This switch enables
building all the <application>LLVM</application> libraries as shared
libraries instead of static.
</para>
<para>
<parameter>-DLLVM_TARGETS_TO_BUILD="host;AMDGPU"</parameter>: This
switch enables building for the same target as the host, and also for
@ -325,9 +293,16 @@ cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</us
</para>
<para>
<option>-DLLVM_BUILD_LLVM_DYLIB=ON</option>: if used instead of
<parameter>-DBUILD_SHARED_LIBS=ON</parameter>, builds libraries as
static and links all of them into an unique shared one.
<option>-DLLVM_LINK_LLVM_DYLIB=ON</option>: Used in conjunction with
<parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter>, this switch enables
linking the tools against the shared library instead of the static ones.
</para>
<para>
<option>-DBUILD_SHARED_LIBS=ON</option>: if used instead of
<parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter>, builds all the
<application>LLVM</application> libraries (about 60) as shared
libraries instead of static.
</para>
<para>
@ -362,8 +337,8 @@ cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</us
scan-build, scan-view, verify-uselistorder, and yaml2obj
</seg>
<seg>
BugpointPasses.so, libclang*.so (21 libraries), libLLVM*.so (53
libraries), libLTO.so, and LLVMHello.so
BugpointPasses.so, LLVMHello.so, libLLVM.so, libLLVM*.a (57
libraries), libLTO.so, libclang.so and libclang*.a (24 libraries)
</seg>
<seg>
/usr/include/{clang,clang-c,llvm,llvm-c},

View File

@ -104,15 +104,17 @@
<xref linkend="llvm"/> (required for Gallium3D r300, r600 and radeonsi
drivers and also for llvmpipe which is intended to be the fastest of the
three sw rasterizers, see
<ulink url="http://www.mesa3d.org/faq.html#part3"/>)
<ulink url="http://www.mesa3d.org/systems.html"/>)
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="libgcrypt"/>,
<xref linkend="nettle"/>,
(<xref linkend="wayland"/> required for <xref linkend='plasma5-build'/>
<phrase revision="systemd"> and for <application>GNOME</application></phrase>),
(<xref linkend="wayland"/> required for
<xref linkend='plasma5-build'/><phrase revision="systemd">,</phrase>
<phrase revision="sysv">and</phrase>
<xref linkend='lxqt'/><phrase revision="systemd">, and GNOME</phrase>),
<ulink url="ftp://ftp.freedesktop.org/pub/mesa/demos/">mesa-demos</ulink>
(provides more than 300 extra demos to test
<application>Mesa</application>; this includes the same programs
@ -156,12 +158,16 @@
</para>
<note>
<para>Add wayland to the <option>--with-egl-platforms</option> option
below if you plan on building <xref linkend='plasma5-build'/>
<phrase revision="systemd">or GNOME</phrase>.</para>
<para>
Add wayland to the <parameter>--with-egl-platforms</parameter> switch
below if you plan on building
<xref linkend='plasma5-build'/><phrase revision="systemd">,</phrase>
<phrase revision="sysv">or</phrase>
<xref linkend='lxqt'/><phrase revision="systemd">, or GNOME</phrase>.
</para>
</note>
<screen><userinput>GLL_DRV="nouveau,r300,r600,radeonsi,svga,swrast,swr" &amp;&amp;
<screen><userinput>GLL_DRV="nouveau,r300,r600,radeonsi,svga,swrast" &amp;&amp;
sed -i "/pthread-stubs/d" configure.ac &amp;&amp;
sed -i "/seems to be moved/s/^/: #/" bin/ltmain.sh &amp;&amp;
@ -290,6 +296,8 @@ cp -rfv docs/* /usr/share/doc/mesa-&mesa-version;</userinput></screen>
will need to remove r300, r600, radeonsi, and swr from the list if you did
not install <application>elfutils</application> and
<application>LLVM</application> with the r600/amdgpu and host backends.
Note that swr is in an early development stage, and the BLFS team does
not recommend building it.
</para>
<para>