Updates and a fix:

Update to LLVM-13.0.0
Update to rustc-1.56.0
Fix Seamonkey to build with the new version of rust
This commit is contained in:
Pierre Labastie 2021-10-25 22:00:08 +02:00
parent 96d79ed5b8
commit 3e8c1264a0
5 changed files with 77 additions and 53 deletions

View File

@ -8,18 +8,18 @@
<!ENTITY llvm-download-http "&llvm-url;/llvm-&llvm-version;.src.tar.xz">
<!ENTITY llvm-download-ftp " ">
<!ENTITY llvm-md5sum "72a257604efa1d32ef85a37cd9c66873">
<!ENTITY llvm-size "41 MB">
<!ENTITY llvm-buildsize "2.5 GB (715 MB installed, add 11 GB for tests)">
<!ENTITY llvm-time "29 SBU (with parallelism=4, add 38 SBU for tests)">
<!ENTITY llvm-md5sum "8c24626dce3ee9d87d1079ebf0897db5">
<!ENTITY llvm-size "43 MB">
<!ENTITY llvm-buildsize "4.0 GB (1 GB installed, with documentation, add 15 GB for tests)">
<!ENTITY llvm-time "38 SBU (on 4 CPU cores, with documentation, add 14 SBU for tests)">
<!ENTITY clang-download-http "&llvm-url;/clang-&llvm-version;.src.tar.xz">
<!ENTITY clang-md5sum "03d77af27fcbeeae4414fb4713b9fd7e">
<!ENTITY clang-size "15 MB">
<!ENTITY clang-md5sum "020cbac6e5786094fe4f96f72e290763">
<!ENTITY clang-size "17 MB">
<!ENTITY compiler-rt-download-http "&llvm-url;/compiler-rt-&llvm-version;.src.tar.xz">
<!ENTITY compiler-rt-md5sum "40095daa9070b20eef9bdd32fdc53db5">
<!ENTITY compiler-rt-size "2.1 MB">
<!ENTITY compiler-rt-md5sum "e2e136656d27d60c5f40e20260f63c07">
<!ENTITY compiler-rt-size "2.2 MB">
]>
<sect1 id="llvm" xreflabel="LLVM-&llvm-version;">
@ -266,7 +266,7 @@ ninja docs-llvm-html docs-llvm-man</userinput></screen>
class="directory">/sys/devices/system/cpu/cpu&lt;N&gt;/online</filename>
by the <systemitem class="username">root</systemitem> user and makes them
temporarily unusable by all jobs on the machine.)
Note that a few of the compiler-rt Sanitizer based tests (16 of more than 48000
Note that a few of the compiler-rt Sanitizer based tests (13 of more than 59000
tests run) are known to fail. Some of the LLVM-Unit IR tests are known to
fail as well.
</para>
@ -276,28 +276,33 @@ ninja docs-llvm-html docs-llvm-man</userinput></screen>
</para>
<screen role="root"><userinput>ninja install</userinput></screen>
<!-- as of version 13.0.0, the install process seems to install the html
documentation and the manual pages. The llvm html documentation
is installed into /usr/share/doc/llvm, while the clang html documentation
is installed into /usr/doc/clang. So we have just to move it. -->
<para>
If you have built the the llvm documentation, install it by running the
following commands as the <systemitem class="username">root</systemitem>
user:
If you have built the the llvm documentation, it has been installed
by the above command, but it needs to be moved. As the
<systemitem class="username">root</systemitem> user:
</para>
<screen role="root"
remap="doc"><userinput>install -v -m644 docs/man/* /usr/share/man/man1 &amp;&amp;
install -v -d -m755 /usr/share/doc/llvm-&llvm-version;/llvm-html &amp;&amp;
cp -Rv docs/html/* /usr/share/doc/llvm-&llvm-version;/llvm-html</userinput></screen>
remap="doc"><userinput>
install -v -d -m755 /usr/share/doc/llvm-&llvm-version; &amp;&amp;
mv -v /usr/share/doc/llvm/html /usr/share/doc/llvm-&llvm-version;/llvm-html &amp;&amp;
rmdir -v /usr/share/doc/llvm</userinput></screen>
<para>
If you have built the clang documentation, it can be installed in the
same way (again as the
<systemitem class="username">root</systemitem> user):
If you have built the clang documentation, it has been installed, but
needs to be moved too. Again as the
<systemitem class="username">root</systemitem> user:
</para>
<screen role="root"
remap="doc"><userinput>install -v -m644 tools/clang/docs/man/* /usr/share/man/man1 &amp;&amp;
install -v -d -m755 /usr/share/doc/llvm-&llvm-version;/clang-html &amp;&amp;
cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</userinput></screen>
remap="doc"><userinput>
install -v -d -m755 /usr/share/doc/llvm-&llvm-version; &amp;&amp;
mv -v /usr/share/doc/clang/html /usr/share/doc/llvm-&llvm-version;/clang-html &amp;&amp;
rmdir -v /usr/share/doc/clang</userinput></screen>
</sect2>
@ -387,39 +392,42 @@ cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</us
clang-&lt;version&gt;), clang-&lt;version&gt;, clang-check, clang-cl,
clang-cpp (last two symlinks to clang), clang-extdef-mapping, clang-format,
clang-offload-bundler, clang-offload-wrapper,
clang-refactor, clang-rename, clang-scan-deps,
clang-refactor, clang-rename, clang-repl, clang-scan-deps,
diagtool, dsymutil, git-clang-format, hmaptool, llc, lli,
llvm-addr2line, llvm-ar, llvm-as, llvm-bcanalyzer,
llvm-addr2line (symlink to llvm-symbolizer),
llvm-ar, llvm-as, llvm-bcanalyzer,
llvm-bitcode-strip (symlink to llvm-objcopy), llvm-cat,
llvm-cfi-verify, llvm-config, llvm-cov, llvm-c-test, llvm-cvtres,
llvm-cxxdump, llvm-cxxfilt, llvm-cxxmap,
llvm-diff, llvm-dis, llvm-dlltool (symlink to llvm-ar), llvm-dwarfdump,
llvm-dwp, llvm-elfabi, llvm-exegenesis, llvm-extract, llvm-gsymutil, llvm-ifs,
llvm-dwp, llvm-exegenesis, llvm-extract, llvm-gsymutil, llvm-ifs,
llvm-install-name-tool (symlink to llvm-objcopy), llvm-jitlink,
llvm-lib (symlink to llvm-ar), llvm-libtool-darwin, llvm-link,
llvm-lipo, llvm-lto, llvm-lto2, llvm-mc, llvm-mca, llvm-ml,
llvm-modextract, llvm-mt, llvm-nm, llvm-objcopy, llvm-objdump,
llvm-opt-report, llvm-pdbutil, llvm-profdata, llvm-profgen,
llvm-opt-report, llvm-otool (symlink to llv-objdump),
llvm-pdbutil, llvm-profdata, llvm-profgen,
llvm-ranlib (symlink to llvm-ar), llvm-rc,
llvm-readelf (symlink to llvm-readobj), llvm-readobj, llvm-reduce,
llvm-rtdyld, llvm-size, llvm-split, llvm-stress, llvm-strings,
llvm-strip (symlink to llvm-objcopy), llvm-symbolizer, llvm-tblgen,
llvm-undname, llvm-xray, opt, sancov, sanstats, scan-build,
llvm-rtdyld, llvm-sim, llvm-size, llvm-split, llvm-stress,
llvm-strings, llvm-strip (symlink to llvm-objcopy), llvm-symbolizer,
llvm-tapi-diff, llvm-tblgen, llvm-undname, llvm-windres (symlink to
llvm-rc, llvm-xray, opt, sancov, sanstats, scan-build,
scan-view, split-file, and verify-uselistorder
</seg>
<seg>
libLLVM.so,
libLLVM*.a (84 libraries),
libLLVM*.a (89 libraries),
libLTO.so,
libRemarks.so,
libclang.so,
libclang-cpp.so,
libclang*.a (37 libraries),
libclang*.a (38 libraries),
and LLVMgold.so
</seg>
<seg>
/usr/include/{clang,clang-c,llvm,llvm-c},
/usr/lib/{clang,cmake/{clang,llvm}},
/usr/lib/{clang,cmake/{clang,llvm},libear,libscanbuild},
/usr/share/{clang,opt-viewer,scan-build,scan-view}, and
/usr/share/doc/llvm-&llvm-version;
</seg>

View File

@ -6,16 +6,16 @@
<!ENTITY rust-download-http "https://static.rust-lang.org/dist/rustc-&rust-version;-src.tar.gz">
<!ENTITY rust-download-ftp " ">
<!ENTITY rust-md5sum "bd6fbe9ba5fe457d2514e92a6ccd7b24">
<!ENTITY rust-size "161 MB">
<!ENTITY rust-md5sum "2a5f12b375b9b8fffe2340f6c2d27eab">
<!ENTITY rust-size "172 MB">
<!-- Gentle Reminder: buildsize is how much the user requires for the real
install, i.e. the source with its DESTDIR *plus* the DESTDIR. You
can 'mkdir /tmp/RUST ; cp -a install/* /tmp/RUST' and then run 'du -sch'
to measure it, or du -sm to look at the size of the build tree before and
after the tests. -->
<!ENTITY rust-buildsize "9.3 GB (407 MB installed) including 291 MB of ~/.cargo files for the user building this. Add 4.0 GB including extra 179 MB of ~/.cargo files if running the tests">
<!ENTITY rust-time "31 SBU (add 13 SBU for tests, both on a 4-core machine)">
<!ENTITY rust-buildsize "8.8 GB (424 MB installed) including 285 MB of ~/.cargo files for the user building this. Add 5.9 GB including extra 273 MB of ~/.cargo files if running the tests">
<!ENTITY rust-time "22 SBU (including download time; add 13 SBU for tests, both on a 4-core machine)">
]>
<sect1 id="rust" xreflabel="rustc-&rust-version;">
@ -324,14 +324,12 @@ python3 ./x.py build --exclude src/tools/miri</userinput></screen>
</para>
<para>
At a minimum, seven tests will fail: ui/asm/inline-syntax.rs#arm,
assembly/target-feature-multiple.rs#SINGLEFLAG,
assembly/target-feature-multiple.rs#TWOFLAGS,
run-make-fulldeps/long-linker-command-lines, run-make-fulldeps/split-debuginfo,
run-make-fulldeps/split-dwarf, run-make-fulldeps/sysroot-crates-are-unstable.
With any recent version of <command>gdb</command>, four more failures
(debuginfo/extern-c-fn.rs, debuginfo/generator-objects.rs,
debuginfo/issue-57822.rs, debuginfo/pretty-huge-vec.rs) can be expected.
At a minimum, fourteen tests will fail: all the tests (eleven) in
the <quote>assembly</quote> suite,
run-make-fulldeps/long-linker-command-lines, run-make-fulldeps/print-cfg,
run-make-fulldeps/sysroot-crates-are-unstable.
If <command>gdb</command> is installed, another failure
(debuginfo/function-names.rs) can be expected.
</para>
<para>
@ -559,18 +557,20 @@ EOF</userinput></screen>
<seglistitem>
<seg>
cargo-clippy, cargo-fmt, cargo-miri, cargo, clippy-driver, miri,
rls, rust-analyzer, rust-gdb, rust-gdbgui, rust-lldb, rustc,
cargo-clippy, cargo-fmt, cargo-miri (optional), cargo, clippy-driver,
miri (optional),
rls, rust-demangler, rust-gdb, rust-gdbgui, rust-lldb, rustc,
rustdoc, rustfmt.
</seg>
<seg>
Many lib*&lt;16-byte-hash&gt;.so libraries.
librustc-driver-&lt;16-byte-hash&gt;.so,
libstd-&lt;16-byte-hash&gt;.so, and
libtest-&lt;16-byte-hash&gt;.so
</seg>
<seg>
~/.cargo,
/opt/rustc/lib/rustlib,
/opt/rustc/share/doc/rustc-&rust-version;, and
/opt/rustc/share/zsh/site-functions
/opt/rustc, symbolic link to
/opt/rustc-&rust-version;
</seg>
</seglistitem>
</segmentedlist>

View File

@ -44,6 +44,18 @@
<listitem>
<para>October 25th, 2021</para>
<itemizedlist>
<listitem>
<para>[pierre] - Fix seamonkey for building with rustc-1.56.0.
See <ulink url="&blfs-ticket-root;15634">#15634</ulink>.</para>
</listitem>
<listitem>
<para>[pierre] - Update to rustc-1.56.0. Fixes
<ulink url="&blfs-ticket-root;15634">#15634</ulink>.</para>
</listitem>
<listitem>
<para>[pierre] - Update to LLVM-13.0.0. Fixes
<ulink url="&blfs-ticket-root;15633">#15633</ulink>.</para>
</listitem>
<listitem>
<para>[thomas] - Update to postgresql-14.0. Fixes
<ulink url="&blfs-ticket-root;15631">#15631</ulink>.</para>

View File

@ -348,8 +348,8 @@ to avoid building libxml2 twice, which is slow with all deps -->
<!ENTITY git-version "2.33.1">
<!ENTITY guile-version "3.0.7">
<!ENTITY librep-version "0.92.7">
<!ENTITY llvm-majmin-version "12.0">
<!ENTITY llvm-point-version "1">
<!ENTITY llvm-majmin-version "13.0">
<!ENTITY llvm-point-version "0">
<!ENTITY llvm-version "&llvm-majmin-version;.&llvm-point-version;">
<!ENTITY lua-version "5.4.3">
<!ENTITY lua52-version "5.2.4">
@ -374,7 +374,7 @@ to avoid building libxml2 twice, which is slow with all deps -->
<!ENTITY ruby-patch-version "2">
<!ENTITY ruby-version "&ruby-minor-version;.&ruby-patch-version;">
<!ENTITY ruby-gemdir "/usr/lib/ruby/gems/&ruby-minor-version;.0">
<!ENTITY rust-version "1.52.0">
<!ENTITY rust-version "1.56.0">
<!ENTITY scons-version "4.2.0">
<!ENTITY slang-version "2.3.2">
<!ENTITY subversion-version "1.14.1">

View File

@ -230,6 +230,10 @@ ac_add_options --disable-crashreporter
ac_add_options --disable-updater
ac_add_options --disable-tests
# rust-simd does not compile with recent versions of rust.
# It is disabled in recent versions of firefox
ac_add_options --disable-rust-simd
ac_add_options --enable-optimize="-O2"
ac_add_options --enable-strip
ac_add_options --enable-install-strip