Update to rustc-1.56.1 and fixit for openssl-3 :

Use a sed to ensure fixed versions of the curl and curl-sys crates
are downloaded.
This commit is contained in:
Ken Moffat 2021-11-20 23:29:04 +00:00
parent 4b852e515a
commit e7c8506a18
3 changed files with 38 additions and 10 deletions

View File

@ -6,7 +6,7 @@
<!ENTITY rust-download-http "https://static.rust-lang.org/dist/rustc-&rust-version;-src.tar.gz">
<!ENTITY rust-download-ftp " ">
<!ENTITY rust-md5sum "2a5f12b375b9b8fffe2340f6c2d27eab">
<!ENTITY rust-md5sum "6d1728cf0a86b0c5f33d3870379997ed">
<!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
@ -14,8 +14,8 @@
to measure it, or du -sm to look at the size of the build tree before and
after the tests. -->
<!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)">
<!ENTITY rust-buildsize "8.8 GB (370 MB installed) including 309 MB of ~/.cargo files for the user building this. Add 6.2 GB including extra 273 MB of ~/.cargo files if running the tests">
<!ENTITY rust-time "27 SBU (including download time; add 13 SBU for tests, both on a 4-core machine)">
]>
<sect1 id="rust" xreflabel="rustc-&rust-version;">
@ -82,8 +82,9 @@
editors recommend placing the files in the <filename
class="directory">/opt</filename> directory. In particular, if you
have reason to rebuild with a modified configuration (e.g. using the
shipped LLVM after building with shared LLVM, or for the
reverse situation) it is possible for the install to leave a broken
shipped LLVM after building with shared LLVM, perhaps to compile crates
for architectres which the BLFS LLVM build does not support)
it is possible for the install to leave a broken
<command>cargo</command> program. In such a situation, either remove
the existing installation first, or use a different prefix such as
/opt/rustc-&rust-version;-build2.
@ -206,8 +207,11 @@
<package>clang</package> from <xref linkend="llvm"/>
(built with -DLLVM_LINK_LLVM_DYLIB=ON so that rust can link to
system LLVM instead of building its shipped version)
<!-- the versions of LLVM in LFS-10.0, 10.1 and 11.0 are good enough
to use for this version of rustc, so do not mention builds
using shipped LLVM here, those are a lot bigger.
If using an older version, see the config.toml file below re
using the shipped llvm, because of rust issue 69225.
using the shipped llvm, because of rust issue 69225.-->
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
@ -303,7 +307,11 @@ EOF</userinput></screen>
commands:
</para>
<screen><userinput>export RUSTFLAGS="$RUSTFLAGS -C link-args=-lffi" &amp;&amp;
<screen><userinput>sed -i -e '/^curl /s/0.4.38/0.4.40/' \
-e '/^curl-sys /s/0.4.48/0.4.50/' \
src/tools/cargo/Cargo.toml &amp;&amp;
export RUSTFLAGS="$RUSTFLAGS -C link-args=-lffi" &amp;&amp;
python3 ./x.py build --exclude src/tools/miri</userinput></screen>
<note>
@ -324,8 +332,9 @@ python3 ./x.py build --exclude src/tools/miri</userinput></screen>
</para>
<para>
At a minimum, fourteen tests will fail: all the tests (eleven) in
the <quote>assembly</quote> suite,
At a minimum, fifteen tests will fail: all the tests (twelve) in
the <quote>assembly</quote> suite, apparently because warnings are
tuened on,
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
@ -439,6 +448,14 @@ cp -a install/* /</userinput></screen>
be larger and take longer.
</para>
<para>
<command>sed -i -e '/^curl /s/0.4.38/0.4.40/' ... </command>: two crates
normally downloaded for this release do not correctly initialise
<application>curl</application> if using
<application>openssl-3.0.0</application>. Upstream has fixed that for a
future release, this sed causes the fixed versions to be used.
</para>
<para>
<command>export RUSTFLAGS="$RUSTFLAGS -C link-args=-lffi"</command>:
This adds a link to libffi to any RUSTFLAGS you may already be passing

View File

@ -41,6 +41,17 @@
</itemizedlist>
</listitem>
-->
<listitem>
<para>November 20th, 2021</para>
<itemizedlist>
<listitem>
<para>[ken] - Update to rustc-1.56.1 and adjust it to be
ready for openssl-3.0.0.. Fixes
<ulink url="&blfs-ticket-root;15767">#15767</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>November 18th, 2021</para>
<itemizedlist>

View File

@ -372,7 +372,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.56.0">
<!ENTITY rust-version "1.56.1">
<!ENTITY scons-version "4.2.0">
<!ENTITY slang-version "2.3.2">
<!ENTITY subversion-version "1.14.1">