Ignore:
Timestamp:
01/27/2016 11:21:15 PM (8 years ago)
Author:
DJ Lucas <dj@…>
Branches:
systemd-13485
Children:
1e76622
Parents:
a7e1ac8
Message:

Merge Chapter 13 from trunk.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/branches/systemd@16861 af4574ff-66df-0310-9fd7-8a98e5e911e0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • general/prog/llvm.xml

    ra7e1ac8 r2037ec4  
    77  <!ENTITY llvm-download-http "http://llvm.org/releases/&llvm-version;/llvm-&llvm-version;.src.tar.xz">
    88  <!ENTITY llvm-download-ftp  " ">
    9   <!ENTITY llvm-md5sum        "b98b9495e5655a672dbcb83e1a180f8e">
     9  <!ENTITY llvm-md5sum        "bf8b3a2c79e61212c5409041dfdbd319">
    1010  <!ENTITY llvm-size          "14 MB">
    11   <!ENTITY llvm-buildsize     "1.7 GB (with Clang)">
    12   <!ENTITY llvm-time          "39 SBU (with Clang and parallelism=2)">
     11  <!ENTITY llvm-buildsize     "1.6 GB (with Clang and tests)">
     12  <!ENTITY llvm-time          "13 SBU (with Clang, tests and parallelism = 4)">
    1313
    1414  <!ENTITY clang-download-http "http://llvm.org/releases/&llvm-version;/cfe-&llvm-version;.src.tar.xz">
    15   <!ENTITY clang-md5sum        "8f9d27335e7331cf0a4711e952f21f01">
    16   <!ENTITY clang-size          "8.8 MB">
     15  <!ENTITY clang-md5sum        "0acd026b5529164197563d135a8fd83e">
     16  <!ENTITY clang-size          " 8.7 MB">
    1717
    1818  <!ENTITY rt-version                "&llvm-version;">
    1919  <!ENTITY compiler-rt-download-http "http://llvm.org/releases/&rt-version;/compiler-rt-&rt-version;.src.tar.xz">
    20   <!ENTITY compiler-rt-md5sum        "383c10affd513026f08936b5525523f5">
     20  <!ENTITY compiler-rt-md5sum        "1c6975daf30bb3b0473b53c3a1a6ff01">
    2121  <!ENTITY compiler-rt-size          "1.2 MB">
    2222]>
     
    5555      <application>LLVM</application>.
    5656    </para>
     57
     58    <note>
     59      <para>
     60        This package hits a bug in GCC-4.9.0 or an unpatched GCC-4.9.1.
     61        To build this package, GCC needs to be updated if you have one of
     62        these versions. See <xref linkend="gcc"/>
     63        for <application>gcc</application> installation instructions.
     64      </para>
     65    </note>
    5766
    5867    &lfs78_checked;
     
    172181mv projects/compiler-rt-&rt-version;.src projects/compiler-rt</userinput></screen>
    173182
     183<!-- Only for 3.7.0: hopefully fixed on later versions -->
     184    <para>
     185      The run-time library needs to be fixed for 32 bit installations:
     186    </para>
     187
     188<screen><userinput>sed -r "/ifeq.*CompilerTargetArch/s#i386#i686#g" \
     189    -i projects/compiler-rt/make/platform/clang_linux.mk</userinput></screen>
     190
    174191    <para>
    175192      Install <application>LLVM</application> by running the following
     
    180197    -i Makefile.config.in &amp;&amp;
    181198
    182 CC=gcc CXX=g++                   \
    183 ./configure --prefix=/usr        \
    184             --sysconfdir=/etc    \
    185             --enable-libffi      \
    186             --enable-optimized   \
    187             --enable-shared      \
    188             --disable-assertions &amp;&amp;
     199mkdir -v build &amp;&amp;
     200cd       build &amp;&amp;
     201
     202CC=gcc CXX=g++                          \
     203../configure --prefix=/usr              \
     204             --datarootdir=/usr/share   \
     205             --sysconfdir=/etc          \
     206             --enable-libffi            \
     207             --enable-optimized         \
     208             --enable-shared            \
     209             --enable-targets=host,r600 \
     210             --disable-assertions       \
     211             --docdir=/usr/share/doc/llvm-&llvm-version; &amp;&amp;
    189212make</userinput></screen>
    190213
     
    194217    </para>
    195218
    196 <screen><userinput>make -C docs -f Makefile.sphinx man</userinput></screen>
     219<screen><userinput>make -C ../docs -f Makefile.sphinx man</userinput></screen>
    197220
    198221    <para>
    199222      To test the results, issue: <command>make -k check-all</command>.
    200       There is a number of unexpected failures that can safely be
    201       ignored.
     223      Some tests may fail for unknown reasons.
    202224    </para>
    203225
     
    211233do
    212234  test -f $file &amp;&amp; chmod -v 644 $file
    213 done &amp;&amp;
     235done
    214236unset file</userinput></screen>
    215237
     
    226248for prog in scan-build scan-view
    227249do
    228   cp -rfv tools/clang/tools/$prog /usr/lib/clang-analyzer/
     250  cp -rfv ../tools/clang/tools/$prog /usr/lib/clang-analyzer/ &amp;&amp;
    229251  ln -sfv ../lib/clang-analyzer/$prog/$prog /usr/bin/
    230 done &amp;&amp;
    231 
    232 ln -sfv /usr/bin/clang /usr/lib/clang-analyzer/scan-build/ &amp;&amp;
    233 mv -v /usr/lib/clang-analyzer/scan-build/scan-build.1 /usr/share/man/man1/ &amp;&amp;
    234 unset prog</userinput></screen>
     252done
     253unset prog &amp;&amp;
     254
     255ln -sfv /usr/bin/clang \
     256        /usr/lib/clang-analyzer/scan-build/ &amp;&amp;
     257mv -v   /usr/lib/clang-analyzer/scan-build/scan-build.1 \
     258        /usr/share/man/man1/</userinput></screen>
    235259
    236260    <para>
     
    240264    </para>
    241265
    242 <screen role="root"><userinput>install -v -m644 docs/_build/man/* /usr/share/man/man1/</userinput></screen>
     266<screen role="root"><userinput>install -v -m644 ../docs/_build/man/* /usr/share/man/man1/</userinput></screen>
    243267
    244268  </sect2>
     
    248272
    249273    <para>
    250       <command>sed -e ... Makefile.config.in</command>: This sed fixes the
     274      <command>sed -e ... Makefile.config.in</command>: This sed fixes
    251275      location of the installed documentation.
    252276    </para>
     
    268292      <parameter>--enable-shared</parameter>: This switch enables
    269293      building of the <application>LLVM</application> shared
    270       library which contains all of the static libraries linked into a
    271       single library.
    272     </para>
    273 
    274     <para>
    275       <parameter>--disable-assertions</parameter>: This switch disables some
    276       additional compile checks which are not neccessary on a production
    277       system.
     294      library which contains all of the static libraries linked into
     295      a single library.
     296    </para>
     297
     298    <para>
     299      <parameter>--enable-targets=host,r600</parameter>: This switch enables
     300      building for the same target as the host, and also for the r600 AMD GPU
     301      used by the Mesa r600 and radeonsi drivers. Default is all. You can use
     302      a comma separated list. Valid targets are: host, x86, x86_64, sparc,
     303      powerpc, arm64, arm, aarch64, mips, hexagon, xcore, msp430, nvptx,
     304      systemz, r600, amdgpu (equivalent to r600), bpf, wasm, and cpp.
     305    </para>
     306
     307    <para>
     308      <parameter>--disable-assertions</parameter>: Disable some compile checks,
     309      not necessary on a production system.
    278310    </para>
    279311
     
    293325          clang-check, clang-format, clang-tblgen, llc, lli, lli-child-target,
    294326          llvm-ar, llvm-as, llvm-bcanalyzer, llvm-config, llvm-cov,
    295           llvm-cxxdump, llvm-diff, llvm-dis, llvm-dsymutil, llvm-dwarfdump,
    296           llvm-extract, llvm-link, llvm-mc, llvm-mcmarkup, llvm-nm,
    297           llvm-objdump, llvm-profdata, llvm-pdbdump,
    298           llvm-ranlib (symlink), llvm-readobj, llvm-rtdyld, llvm-size,
    299           llvm-stress, llvm-symbolizer, llvm-tblgen, macho-dump, not, obj2yaml,
    300           opt, scan-build (symlink), scan-view (symlink), verify-uselistorder,
    301           and yaml2obj
     327          llvm-cxxdump, llvm-diff, llvm-dis, llvm-dsymutil, llvm-dwarfdump,
     328          llvm-extract, llvm-link, llvm-mc, llvm-mcmarkup, llvm-nm,
     329          llvm-objdump, llvm-pdbdump, llvm-profdata, llvm-ranlib (symlink),
     330          llvm-readobj, llvm-rtdyld, llvm-size, llvm-stress, llvm-symbolizer,
     331          llvm-tblgen, macho-dump, not, obj2yaml, opt, scan-build (symlink),
     332          scan-view (symlink), verify-uselistorder, and yaml2obj
    302333        </seg>
    303334        <seg>
    304335          BugpointPasses.so, libclang.so, libLLVM-&llvm-version;.so,
    305           libLLVM-3.7.so,  libLTO.so,<!-- libprofile_rt.so,-->
    306           LLVMHello.so and numerous static libraries in /usr/lib
     336          libLTO.so,<!-- libprofile_rt.so,--> LLVMHello.so and numerous
     337          static libraries in /usr/lib
    307338        </seg>
    308339        <seg>
    309340          /usr/include/{clang,clang-c,llvm,llvm-c},
    310           /usr/lib/{clang,clang-analyzer},
    311           /usr/share/doc/llvm-&llvm-version;, and
    312           /usr/share/llvm
     341          /usr/lib/{clang,clang-analyzer}, and
     342          /usr/share/{doc/llvm-&llvm-version;,llvm}
    313343        </seg>
    314344      </seglistitem>
     
    430460      </varlistentry>
    431461
     462      <varlistentry id="llvm-cxxdump">
     463        <term><command>llvm-cxxdump</command></term>
     464        <listitem>
     465          <para>
     466            is used for C++ ABI Data Dumper.
     467          </para>
     468          <indexterm zone="llvm llvm-cxxdump">
     469            <primary sortas="b-llvm-cxxdump">llvm-cxxdump</primary>
     470          </indexterm>
     471        </listitem>
     472      </varlistentry>
     473
    432474      <varlistentry id="llvm-diff">
    433475        <term><command>llvm-diff</command></term>
     
    459501        <listitem>
    460502          <para>
    461             is a tool used to manipulate archived DWARF debug symbol files,
     503            tool used to manipulate archived DWARF debug symbol files,
    462504            compatible with the Darwin command <command>dsymutil</command>.
    463505          </para>
     
    502544          <indexterm zone="llvm llvm-nm">
    503545            <primary sortas="b-llvm-nm">llvm-nm</primary>
     546          </indexterm>
     547        </listitem>
     548      </varlistentry>
     549
     550      <varlistentry id="llvm-pdbdump">
     551        <term><command>llvm-pdbdump</command></term>
     552        <listitem>
     553          <para>
     554            is used as PDB Dumper.
     555          </para>
     556          <indexterm zone="llvm llvm-pdbdump">
     557            <primary sortas="b-llvm-pdbdump">llvm-pdbdump</primary>
    504558          </indexterm>
    505559        </listitem>
Note: See TracChangeset for help on using the changeset viewer.