Changes in general/prog/llvm.xml [5a8c6008:7975c68a]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
general/prog/llvm.xml
r5a8c6008 r7975c68a 9 9 <!ENTITY llvm-download-http "&llvm-url;/llvm-&llvm-version;.src.tar.xz"> 10 10 <!ENTITY llvm-download-ftp " "> 11 <!ENTITY llvm-md5sum " 6812fb953d8e50f029848b281d89ad67">12 <!ENTITY llvm-size " 51MB">13 <!ENTITY llvm-buildsize " 3.6 GB (848 MB installed; add 18.3 GB for tests and 308 MB for documentation)">14 <!ENTITY llvm-time "3 1 SBU (with doc, on 4 CPU cores; add 22SBU for tests)">11 <!ENTITY llvm-md5sum "8c24626dce3ee9d87d1079ebf0897db5"> 12 <!ENTITY llvm-size "43 MB"> 13 <!ENTITY llvm-buildsize "4.0 GB (1 GB installed, with documentation, add 15 GB for tests)"> 14 <!ENTITY llvm-time "38 SBU (on 4 CPU cores, with documentation, add 14 SBU for tests)"> 15 15 16 16 <!ENTITY clang-download-http "&llvm-url;/clang-&llvm-version;.src.tar.xz"> 17 <!ENTITY clang-md5sum " f9c15101030fb669af522cc8814484e8">18 <!ENTITY clang-size "1 8MB">17 <!ENTITY clang-md5sum "020cbac6e5786094fe4f96f72e290763"> 18 <!ENTITY clang-size "17 MB"> 19 19 20 20 <!ENTITY compiler-rt-download-http "&llvm-url;/compiler-rt-&llvm-version;.src.tar.xz"> 21 <!ENTITY compiler-rt-md5sum " c1d9422709c74c208bfaf7f9d707b757">21 <!ENTITY compiler-rt-md5sum "e2e136656d27d60c5f40e20260f63c07"> 22 22 <!ENTITY compiler-rt-size "2.2 MB"> 23 24 <!ENTITY cmake-llvm-download-http "&sources-anduin-http;/llvm/llvm-cmake-&llvm-version;.src.tar.xz">25 <!-- <!ENTITY cmake-llvm-download-http "&llvm-url;/cmake-&llvm-version;.src.tar.xz">26 Renamed cmake-15.0.1.src.tar.xz and placed on anduin.-->27 <!ENTITY cmake-llvm-md5sum "39eb4055b66b65c9052ea1d1240026e2">28 <!ENTITY cmake-llvm-size "6.8 KB">29 23 ]> 30 24 … … 32 26 <?dbhtml filename="llvm.html" ?> 33 27 28 <sect1info> 29 <date>$Date$</date> 30 </sect1info> 34 31 35 32 <title>LLVM-&llvm-version;</title> … … 66 63 </para> 67 64 68 &lfs11 2_checked;65 &lfs110a_checked; 69 66 70 67 <bridgehead renderas="sect3">Package Information</bridgehead> … … 102 99 </itemizedlist> 103 100 104 <bridgehead renderas="sect3">Additional Downloads</bridgehead>105 <para>106 <emphasis role="strong">Cmake modules for LLVM</emphasis>107 </para>108 <itemizedlist spacing="compact">109 <listitem>110 <para>111 Download: <ulink url="&cmake-llvm-download-http;"/>112 </para>113 </listitem>114 <listitem>115 <para>116 Download MD5 sum: &cmake-llvm-md5sum;117 </para>118 </listitem>119 <listitem>120 <para>121 Download size: &cmake-llvm-size;122 </para>123 </listitem>124 </itemizedlist>125 126 101 <bridgehead renderas="sect3">Recommended Download</bridgehead> 127 <para> 128 <emphasis role="strong">Clang</emphasis> 129 </para> 130 <itemizedlist spacing="compact"> 131 <listitem> 132 <para> 133 Download: <ulink url="&clang-download-http;"/> 134 </para> 135 </listitem> 136 <listitem> 137 <para> 138 Download MD5 sum: &clang-md5sum; 139 </para> 140 </listitem> 141 <listitem> 142 <para> 143 Download size: &clang-size; 144 </para> 145 </listitem> 146 </itemizedlist> 147 <itemizedlist spacing="compact"> 148 <listitem> 149 <para> 150 Patch enabling <xref linkend="gSSP"/> by default in clang: 151 <ulink url="&patch-root;/clang-&llvm-version;-enable_default_ssp-1.patch"/> 152 </para> 153 </listitem> 154 </itemizedlist> 102 <bridgehead role="recommended" renderas="sect4">Clang</bridgehead> 103 <itemizedlist spacing="compact"> 104 <listitem> 105 <para> 106 Download: <ulink url="&clang-download-http;"/> 107 </para> 108 </listitem> 109 <listitem> 110 <para> 111 Download MD5 sum: &clang-md5sum; 112 </para> 113 </listitem> 114 <listitem> 115 <para> 116 Download size: &clang-size; 117 </para> 118 </listitem> 119 </itemizedlist> 155 120 156 121 <bridgehead renderas="sect3">Optional Download</bridgehead> 157 <para> 158 <emphasis role="strong">Compiler RT</emphasis> 159 </para> 160 <itemizedlist spacing="compact"> 161 <listitem> 162 <para> 163 Download: <ulink url="&compiler-rt-download-http;"/> 164 </para> 165 </listitem> 166 <listitem> 167 <para> 168 Download MD5 sum: &compiler-rt-md5sum; 169 </para> 170 </listitem> 171 <listitem> 172 <para> 173 Download size: &compiler-rt-size; 174 </para> 175 </listitem> 176 </itemizedlist> 122 <bridgehead role="optional" renderas="sect4">Compiler RT</bridgehead> 123 <itemizedlist spacing="compact"> 124 <listitem> 125 <para> 126 Download: <ulink url="&compiler-rt-download-http;"/> 127 </para> 128 </listitem> 129 <listitem> 130 <para> 131 Download MD5 sum: &compiler-rt-md5sum; 132 </para> 133 </listitem> 134 <listitem> 135 <para> 136 Download size: &compiler-rt-size; 137 </para> 138 </listitem> 139 </itemizedlist> 140 <!-- 141 <itemizedlist spacing="compact"> 142 <listitem> 143 <para> 144 Optional patch: 145 <ulink url="&patch-root;/llvm-&llvm-version;-compiler_rt_buildfix-1.patch"/> 146 (required if using compiler-rt) 147 </para> 148 </listitem> 149 </itemizedlist> 150 --> 177 151 <bridgehead renderas="sect3">LLVM Dependencies</bridgehead> 178 152 … … 195 169 <xref linkend="zip"/>, 196 170 <ulink url="https://ocaml.org/">OCaml</ulink>, 197 <ulink url="https://pypi.org/project/psutil/">psutil</ulink> (for tests), 198 <ulink url="https://pypi.python.org/pypi/recommonmark">recommonmark</ulink> 199 and <ulink url="https://pypi.python.org/pypi/Sphinx">Sphinx</ulink> 200 (for building the documentation), and 171 <ulink url="https://pypi.org/project/psutil/">psutil</ulink>, 172 <ulink url="https://pypi.python.org/pypi/recommonmark">recommonmark</ulink>, 173 <ulink url="https://pypi.python.org/pypi/Sphinx">Sphinx</ulink>, and 201 174 <ulink url="https://github.com/Z3Prover/z3">Z3</ulink> 202 175 </para> … … 210 183 <title>Installation of LLVM</title> 211 184 212 <note>213 <para>214 Starting with version 15.0.0, an additional tarball215 <filename>llvm-cmake-&llvm-version;.src.tar.xz</filename>216 needs to be extracted at the same level as the217 <filename>llvm-&llvm-version;.src.tar.xz</filename> tarball,218 and the extracted directory needs to be renamed to219 <filename class="directory">cmake</filename>.220 </para>221 222 <screen><userinput>tar -xf ../llvm-cmake-&llvm-version;.src.tar.xz &&223 mv cmake-&llvm-version;.src ../cmake</userinput></screen>224 225 </note>226 227 185 <para> 228 186 Install <application>clang</application> into … … 244 202 There are many Python scripts in this package which use 245 203 <command>/usr/bin/env python</command> to access the system Python 246 which on LFS is <xref linkend="python3"/>. Use the following com mand204 which on LFS is <xref linkend="python3"/>. Use the following comand 247 205 to fix these scripts: 248 206 </para> 249 207 250 208 <screen><userinput>grep -rl '#!.*python' | xargs sed -i '1s/python$/python3/'</userinput></screen> 251 252 <para> 253 If you have downloaded <application>clang</application>, 254 apply the following patch to enable <xref linkend="gSSP"/> by default 255 in compiled programs. 256 </para> 257 <!-- need <../<patch> instead of -i because -d changes directory 258 before applying -i --> 259 <screen><userinput remap="pre">patch -Np2 -d tools/clang <../clang-&llvm-version;-enable_default_ssp-1.patch</userinput></screen> 260 209 <!-- 210 <para> 211 If you have downloaded <application>compiler-rt</application>, 212 fix building it with Linux-5.13.0 by using the following command: 213 </para> 214 215 <screen><userinput remap="pre">patch -Np1 -i ../llvm-&llvm-version;-compiler_rt_buildfix-1.patch</userinput></screen> 216 --> 261 217 <para> 262 218 Install <application>LLVM</application> by running the following … … 275 231 -DLLVM_ENABLE_RTTI=ON \ 276 232 -DLLVM_TARGETS_TO_BUILD="host;AMDGPU;BPF" \ 233 -DLLVM_BUILD_TESTS=ON \ 277 234 -DLLVM_BINUTILS_INCDIR=/usr/include \ 278 -DLLVM_INCLUDE_BENCHMARKS=OFF \279 -DCLANG_DEFAULT_PIE_ON_LINUX=ON \280 235 -Wno-dev -G Ninja .. && 281 236 ninja</userinput></screen> … … 312 267 by the <systemitem class="username">root</systemitem> user and makes them 313 268 temporarily unusable by all jobs on the machine.) 314 <!--Note that 2 of more than 62090 tests (llvm-libtool-darwin/L-and-l.test 315 and ThreadSanitizer-x86_64) are known to fail.--> 316 <!--Note that three tests, <filename>extendhfsf2_test.c</filename>, 317 <filename>truncdfhf2_test.c</filename>, and 318 <filename>truncsfhf2_test.c</filename> are known to fail.--> 319 <!-- 15.0.1: --> 320 Note that three tests out of more than 64,700 are known to fail: 321 <filename>DataFlowSanitizer-x86_64 :: custom.cpp</filename>, 322 <filename>DataFlowSanitizer-x86_64 :: origin_unaligned_memtrans.c</filename>, 323 <filename>LLVM :: tools/llvm-libtool-darwin/L-and-l.test</filename>, 269 Note that a few of the compiler-rt Sanitizer based tests (13 of more than 59000 270 tests run) are known to fail. Some of the LLVM-Unit IR tests are known to 271 fail as well. 324 272 </para> 325 273 … … 340 288 341 289 <screen role="root" 342 remap="doc"><userinput>install -v -d -m755 /usr/share/doc/llvm-&llvm-version; &&343 mv -v /usr/share/doc/ LLVM/llvm /usr/share/doc/llvm-&llvm-version;&&344 rmdir -v --ignore-fail-on-non-empty /usr/share/doc/LLVM</userinput></screen>290 remap="doc"><userinput>install -v -d -m755 /usr/share/doc/llvm-&llvm-version; && 291 mv -v /usr/share/doc/llvm/html /usr/share/doc/llvm-&llvm-version;/llvm-html && 292 rmdir -v /usr/share/doc/llvm</userinput></screen> 345 293 346 294 <para> … … 351 299 352 300 <screen role="root" 353 remap="doc"><userinput>install -v -d -m755 /usr/share/doc/llvm-&llvm-version; &&354 mv -v /usr/share/doc/ LLVM/clang /usr/share/doc/llvm-&llvm-version;&&355 rmdir -v --ignore-fail-on-non-empty /usr/share/doc/LLVM</userinput></screen>301 remap="doc"><userinput>install -v -d -m755 /usr/share/doc/llvm-&llvm-version; && 302 mv -v /usr/share/doc/clang/html /usr/share/doc/llvm-&llvm-version;/clang-html && 303 rmdir -v /usr/share/doc/clang</userinput></screen> 356 304 357 305 </sect2> … … 393 341 <parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter>, this switch enables 394 342 linking the tools against the shared library instead of the static ones. 395 It slightly reduces their size and also ensures that llvm-config396 will correctly use libLLVM-&llvm-maj -version;.so.343 It also slightly reduces their size and also ensures that llvm-config 344 will correctly use libLLVM-&llvm-majmin-version;.so. 397 345 </para> 398 346 … … 413 361 414 362 <para> 415 <parameter>-DLLVM_INCLUDE_BENCHMARKS=OFF</parameter>:416 is used to disable generation build targets for the LLVM417 benchmarks. This option requires additional code that418 is not currently available.419 </para>420 421 <para>422 <parameter>-DCLANG_DEFAULT_PIE_ON_LINUX=ON</parameter>: makes423 <option>-fpie</option> option the default when compiling programs.424 Together with the <xref linkend="gASLR"/> feature enabled in the kernel,425 this defeats some kind of attacks based on known memory layouts.426 </para>427 428 <para>429 363 <option>-DBUILD_SHARED_LIBS=ON</option>: if used instead of 430 364 <parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter> and … … 453 387 <seglistitem> 454 388 <seg> 455 analyze-build,bugpoint, c-index-test, clang, clang++ (symlinks to456 clang-&l lvm-maj-version;), clang-&llvm-maj-version;, clang-check, clang-cl,389 bugpoint, c-index-test, clang, clang++ (symlinks to 390 clang-<version>), clang-<version>, clang-check, clang-cl, 457 391 clang-cpp (last two symlinks to clang), clang-extdef-mapping, clang-format, 458 clang-linker-wrapper, clang-nvlink-wrapper, 459 clang-offload-bundler, clang-offload-packager, clang-offload-wrapper, 392 clang-offload-bundler, clang-offload-wrapper, 460 393 clang-refactor, clang-rename, clang-repl, clang-scan-deps, 461 diagtool, dsymutil, git-clang-format, hmaptool, intercept-build,llc, lli,394 diagtool, dsymutil, git-clang-format, hmaptool, llc, lli, 462 395 llvm-addr2line (symlink to llvm-symbolizer), 463 396 llvm-ar, llvm-as, llvm-bcanalyzer, … … 465 398 llvm-cfi-verify, llvm-config, llvm-cov, llvm-c-test, llvm-cvtres, 466 399 llvm-cxxdump, llvm-cxxfilt, llvm-cxxmap, 467 llvm-debuginfod, llvm-debuginfod-find, 468 llvm-diff, llvm-dis, llvm-dlltool (symlink to llvm-ar), 469 llvm-dwarfdump, llvm-dwarfutil, 470 llvm-dwp, llvm-exegesis, llvm-extract, llvm-gsymutil, llvm-ifs, 400 llvm-diff, llvm-dis, llvm-dlltool (symlink to llvm-ar), llvm-dwarfdump, 401 llvm-dwp, llvm-exegenesis, llvm-extract, llvm-gsymutil, llvm-ifs, 471 402 llvm-install-name-tool (symlink to llvm-objcopy), llvm-jitlink, 472 403 llvm-lib (symlink to llvm-ar), llvm-libtool-darwin, llvm-link, … … 477 408 llvm-ranlib (symlink to llvm-ar), llvm-rc, 478 409 llvm-readelf (symlink to llvm-readobj), llvm-readobj, llvm-reduce, 479 llvm-remark-size-diff,480 410 llvm-rtdyld, llvm-sim, llvm-size, llvm-split, llvm-stress, 481 411 llvm-strings, llvm-strip (symlink to llvm-objcopy), llvm-symbolizer, 482 llvm-tapi-diff, llvm-tblgen, llvm- tli-checker, llvm-undname, llvm-windres (symlink to483 llvm-rc ), llvm-xray, opt, sancov, sanstats, scan-build,484 scan- build-py, scan-view, split-file, and verify-uselistorder412 llvm-tapi-diff, llvm-tblgen, llvm-undname, llvm-windres (symlink to 413 llvm-rc, llvm-xray, opt, sancov, sanstats, scan-build, 414 scan-view, split-file, and verify-uselistorder 485 415 </seg> 486 416 <seg> 487 417 libLLVM.so, 488 libLLVM*.a ( 95libraries),418 libLLVM*.a (89 libraries), 489 419 libLTO.so, 490 420 libRemarks.so, 491 421 libclang.so, 492 422 libclang-cpp.so, 493 libclang*.a ( 41libraries),423 libclang*.a (38 libraries), 494 424 and LLVMgold.so 495 425 </seg> … … 508 438 <?dbhtml list-presentation="table"?> 509 439 510 <varlistentry id="analyze-build">511 <term><command>analyze-build</command></term>512 <listitem>513 <para>514 is a static analysis tool515 </para>516 <indexterm zone="llvm analyze-build">517 <primary sortas="b-analyze-build">analyze-build</primary>518 </indexterm>519 </listitem>520 </varlistentry>521 522 440 <varlistentry id="bugpoint"> 523 441 <term><command>bugpoint</command></term> … … 596 514 </varlistentry> 597 515 598 <varlistentry id="clang-linker-wrapper"> 599 <term><command>clang-linker-wrapper</command></term> 600 <listitem> 601 <para> 602 is a wrapper utility over the host linker 603 </para> 604 <indexterm zone="llvm clang-linker-wrapper"> 605 <primary sortas="b-clang-linker-wrapper">clang-linker-wrapper</primary> 606 </indexterm> 607 </listitem> 608 </varlistentry> 609 610 <varlistentry id="clang-nvlink-wrapper"> 611 <term><command>clang-nvlink-wrapper</command></term> 612 <listitem> 613 <para> 614 is a wrapper tool over the nvlink program 615 </para> 616 <indexterm zone="llvm clang-nvlink-wrapper"> 617 <primary sortas="b-clang-nvlink-wrapper">clang-nvlink-wrapper</primary> 618 </indexterm> 619 </listitem> 620 </varlistentry> 621 516 <!-- 517 <varlistentry id="clang-func-mapping"> 518 <term><command>clang-func-mapping</command></term> 519 <listitem> 520 <para> 521 collects the name and location of all function definitions in the 522 source files. 523 </para> 524 <indexterm zone="llvm clang-func-mapping"> 525 <primary sortas="b-clang-func-mapping">clang-func-mapping</primary> 526 </indexterm> 527 </listitem> 528 </varlistentry> 529 --> 622 530 <varlistentry id="clang-offload-bundler"> 623 531 <term><command>clang-offload-bundler</command></term> … … 629 537 <indexterm zone="llvm clang-offload-bundler"> 630 538 <primary sortas="b-clang-offload-bundler">clang-offload-bundler</primary> 631 </indexterm>632 </listitem>633 </varlistentry>634 635 <varlistentry id="clang-offload-packager">636 <term><command>clang-offload-packager</command></term>637 <listitem>638 <para>639 is a tool to bundle several object files into a single binary,640 which can then be used to create a fatbinary containing offloading641 code642 </para>643 <indexterm zone="llvm clang-offload-packager">644 <primary sortas="b-clang-offload-packager">clang-offload-packager</primary>645 539 </indexterm> 646 540 </listitem> … … 941 835 </varlistentry> 942 836 943 <varlistentry id="llvm-debuginfod">944 <term><command>llvm-debuginfod</command></term>945 <listitem>946 <para>947 is a service providing debug information over an HTTP API for948 analyzing stripped binaries949 </para>950 <indexterm zone="llvm llvm-debuginfod">951 <primary sortas="b-llvm-debuginfod">llvm-debuginfod</primary>952 </indexterm>953 </listitem>954 </varlistentry>955 956 <varlistentry id="llvm-debuginfod-find">957 <term><command>llvm-debuginfod-find</command></term>958 <listitem>959 <para>960 is an interface to the <command>llvm-debuginfod</command> daemon961 for finding debuginfod artifacts962 </para>963 <indexterm zone="llvm llvm-debuginfod-find">964 <primary sortas="b-llvm-debuginfod-find">llvm-debuginfod-find</primary>965 </indexterm>966 </listitem>967 </varlistentry>968 969 837 <varlistentry id="llvm-diff"> 970 838 <term><command>llvm-diff</command></term> … … 1000 868 <indexterm zone="llvm llvm-dwarfdump"> 1001 869 <primary sortas="b-llvm-dwarfdump">llvm-dwarfdump</primary> 1002 </indexterm>1003 </listitem>1004 </varlistentry>1005 1006 <varlistentry id="llvm-dwarfutil">1007 <term><command>llvm-dwarfutil</command></term>1008 <listitem>1009 <para>1010 is a tool to copy and manipulate debug info1011 </para>1012 <indexterm zone="llvm llvm-dwarfutil">1013 <primary sortas="b-llvm-dwarfutil">llvm-dwarfutil</primary>1014 870 </indexterm> 1015 871 </listitem> … … 1392 1248 </varlistentry> 1393 1249 1394 <varlistentry id="llvm-remark-size-diff">1395 <term><command>llvm-remark-size-diff</command></term>1396 <listitem>1397 <para>1398 reports the difference in instruction count and stack size1399 remarks between two remark files1400 </para>1401 <indexterm zone="llvm llvm-remark-size-diff">1402 <primary sortas="b-llvm-remark-size-diff">llvm-remark-size-diff</primary>1403 </indexterm>1404 </listitem>1405 </varlistentry>1406 1407 1250 <varlistentry id="llvm-rtdyld"> 1408 1251 <term><command>llvm-rtdyld</command></term> … … 1471 1314 <listitem> 1472 1315 <para> 1473 converts ad dresses into source code locations1316 converts adresses into source code locations 1474 1317 </para> 1475 1318 <indexterm zone="llvm llvm-symbolizer"> … … 1492 1335 </varlistentry> 1493 1336 1494 <varlistentry id="llvm-tli-checker">1495 <term><command>llvm-tli-checker</command></term>1496 <listitem>1497 <para>1498 is the <application>LLVM</application> TargetLibraryInfo1499 versus SDK checker1500 </para>1501 <indexterm zone="llvm llvm-tli-checker">1502 <primary sortas="b-llvm-tli-checker">llvm-tli-checker</primary>1503 </indexterm>1504 </listitem>1505 </varlistentry>1506 1507 1337 <varlistentry id="llvm-undname"> 1508 1338 <term><command>llvm-undname</command></term> … … 1529 1359 </varlistentry> 1530 1360 1531 <varlistentry id="intercept-build"> 1532 <term><command>intercept-build</command></term> 1533 <listitem> 1534 <para> 1535 generates a database of build commands for a project 1536 </para> 1537 <indexterm zone="llvm intercept-build"> 1538 <primary sortas="b-intercept-build">intercept-build</primary> 1539 </indexterm> 1540 </listitem> 1541 </varlistentry> 1542 1361 <!-- 1362 <varlistentry id="obj2yaml"> 1363 <term><command>obj2yaml</command></term> 1364 <listitem> 1365 <para> 1366 takes an object file, and produces a YAML representation of the 1367 file 1368 </para> 1369 <indexterm zone="llvm obj2yaml"> 1370 <primary sortas="b-obj2yaml">obj2yaml</primary> 1371 </indexterm> 1372 </listitem> 1373 </varlistentry> 1374 --> 1543 1375 1544 1376 <varlistentry id="opt"> … … 1587 1419 <indexterm zone="llvm scan-build"> 1588 1420 <primary sortas="b-scan-build">scan-build</primary> 1589 </indexterm>1590 </listitem>1591 </varlistentry>1592 1593 <varlistentry id="scan-build-py">1594 <term><command>scan-build-py</command></term>1595 <listitem>1596 <para>1597 is a <application>Python</application> script that invokes the1598 <application>Clang</application> static analyzer1599 </para>1600 <indexterm zone="llvm scan-build-py">1601 <primary sortas="b-scan-build-py">scan-build-py</primary>1602 1421 </indexterm> 1603 1422 </listitem>
Note:
See TracChangeset
for help on using the changeset viewer.