Compare commits
50 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
6fff218b19 | ||
|
ff66501ce9 | ||
|
8745dbe4c6 | ||
|
777115da9e | ||
|
41fd9d7898 | ||
|
77613da92c | ||
|
7ac7a42b5e | ||
|
b4bb093ae0 | ||
|
a07799699f | ||
|
b85b429e00 | ||
|
7f5b9608ec | ||
|
375b75425b | ||
|
f50b7f0c26 | ||
|
752fe3bcd2 | ||
|
d8cb2d0d2e | ||
|
de19464425 | ||
|
23df2b257f | ||
|
d90cdf5795 | ||
|
4ee64c64a1 | ||
|
dbc2fd6f22 | ||
|
256f31f182 | ||
|
5a745388ed | ||
|
1f0d4ff0a2 | ||
|
5379ac25ac | ||
|
f5bf4afaf1 | ||
|
fbf19ab00e | ||
|
f4ffb080ba | ||
|
f8bc0ed0d9 | ||
|
329f0aa507 | ||
|
9079a8b665 | ||
|
da6e6dd42c | ||
|
f2eed3dd39 | ||
|
3c34da705b | ||
|
70748e85ce | ||
|
04da44cfe0 | ||
|
2732633a74 | ||
|
96205271fc | ||
|
58058fcf89 | ||
|
eb8a9d02cd | ||
|
ca44879840 | ||
|
e605359b2b | ||
|
a929a38db9 | ||
|
820e900bd0 | ||
|
26168805e8 | ||
|
36c3018948 | ||
|
b4ce4e3b09 | ||
|
7b8811c5df | ||
|
b71ab25d58 | ||
|
7ece76136b | ||
|
87168d10f5 |
46
.gitignore
vendored
46
.gitignore
vendored
@ -370,7 +370,53 @@
|
|||||||
/rust-1.55.0-aarch64-unknown-linux-gnu.tar.xz
|
/rust-1.55.0-aarch64-unknown-linux-gnu.tar.xz
|
||||||
/rust-1.55.0-armv7-unknown-linux-gnueabihf.tar.xz
|
/rust-1.55.0-armv7-unknown-linux-gnueabihf.tar.xz
|
||||||
/rust-1.55.0-i686-unknown-linux-gnu.tar.xz
|
/rust-1.55.0-i686-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.55.0-powerpc64-unknown-linux-gnu.tar.xz
|
||||||
/rust-1.55.0-powerpc64le-unknown-linux-gnu.tar.xz
|
/rust-1.55.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||||
/rust-1.55.0-s390x-unknown-linux-gnu.tar.xz
|
/rust-1.55.0-s390x-unknown-linux-gnu.tar.xz
|
||||||
/rust-1.55.0-x86_64-unknown-linux-gnu.tar.xz
|
/rust-1.55.0-x86_64-unknown-linux-gnu.tar.xz
|
||||||
/rustc-1.56.1-src.tar.xz
|
/rustc-1.56.1-src.tar.xz
|
||||||
|
/rustc-1.57.0-src.tar.xz
|
||||||
|
/wasi-libc-ad5133410f66b93a2381db5b542aad5e0964db96.tar.gz
|
||||||
|
/rust-1.56.1-aarch64-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.56.1-armv7-unknown-linux-gnueabihf.tar.xz
|
||||||
|
/rust-1.56.1-i686-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.56.1-powerpc64le-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.56.1-s390x-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.56.1-x86_64-unknown-linux-gnu.tar.xz
|
||||||
|
/rustc-1.58.0-src.tar.xz
|
||||||
|
/rust-1.57.0-aarch64-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.57.0-armv7-unknown-linux-gnueabihf.tar.xz
|
||||||
|
/rust-1.57.0-i686-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.57.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.57.0-s390x-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.57.0-x86_64-unknown-linux-gnu.tar.xz
|
||||||
|
/rustc-1.58.1-src.tar.xz
|
||||||
|
/rustc-1.59.0-src.tar.xz
|
||||||
|
/rust-1.58.0-aarch64-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.58.0-armv7-unknown-linux-gnueabihf.tar.xz
|
||||||
|
/rust-1.58.0-i686-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.58.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.58.0-s390x-unknown-linux-gnu.tar.xz
|
||||||
|
/rust-1.58.0-x86_64-unknown-linux-gnu.tar.xz
|
||||||
|
/rustc-1.60.0-src.tar.xz
|
||||||
|
/rustc-1.61.0-src.tar.xz
|
||||||
|
/wasi-libc-9886d3d6200fcc3726329966860fc058707406cd.tar.gz
|
||||||
|
/rustc-1.62.0-src.tar.xz
|
||||||
|
/rustc-1.62.1-src.tar.xz
|
||||||
|
/rustc-1.63.0-src.tar.xz
|
||||||
|
/rustc-1.64.0-src.tar.xz
|
||||||
|
/rustc-1.65.0-src.tar.xz
|
||||||
|
/wasi-libc-wasi-sdk-16.tar.gz
|
||||||
|
/rustc-1.66.0-src.tar.xz
|
||||||
|
/wasi-libc-wasi-sdk-17.tar.gz
|
||||||
|
/rustc-1.66.1-src.tar.xz
|
||||||
|
/rustc-1.67.0-src.tar.xz
|
||||||
|
/rustc-1.67.1-src.tar.xz
|
||||||
|
/rustc-1.68.0-src.tar.xz
|
||||||
|
/wasi-libc-wasi-sdk-19.tar.gz
|
||||||
|
/rustc-1.68.1-src.tar.xz
|
||||||
|
/rustc-1.68.2-src.tar.xz
|
||||||
|
/rustc-1.69.0-src.tar.xz
|
||||||
|
/wasi-libc-1dfe5c302d1c5ab621f7abf04620fae92700fd22.tar.gz
|
||||||
|
/rustc-1.70.0-src.tar.xz
|
||||||
|
/wasi-libc-wasi-sdk-20.tar.gz
|
||||||
|
@ -1,102 +0,0 @@
|
|||||||
From eaf7ea1fc339e1ff348ed941ed2e8c4d66f3e458 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Josh Stone <jistone@redhat.com>
|
|
||||||
Date: Thu, 18 Feb 2021 19:14:58 -0800
|
|
||||||
Subject: [PATCH] Revert "Auto merge of #79547 - erikdesjardins:byval,
|
|
||||||
r=nagisa"
|
|
||||||
|
|
||||||
This reverts commit a094ff9590b83c8f94d898f92c2964a5803ded06, reversing
|
|
||||||
changes made to d37afad0cc87bf709ad10c85319296ac53030f03.
|
|
||||||
---
|
|
||||||
compiler/rustc_middle/src/ty/layout.rs | 12 ++++++------
|
|
||||||
...return-value-in-reg.rs => return-value-in-reg.rs} | 4 ++--
|
|
||||||
src/test/codegen/union-abi.rs | 11 +++--------
|
|
||||||
3 files changed, 11 insertions(+), 16 deletions(-)
|
|
||||||
rename src/test/codegen/{arg-return-value-in-reg.rs => return-value-in-reg.rs} (74%)
|
|
||||||
|
|
||||||
diff --git a/compiler/rustc_middle/src/ty/layout.rs b/compiler/rustc_middle/src/ty/layout.rs
|
|
||||||
index b545b92c9252..545f6aee1a21 100644
|
|
||||||
--- a/compiler/rustc_middle/src/ty/layout.rs
|
|
||||||
+++ b/compiler/rustc_middle/src/ty/layout.rs
|
|
||||||
@@ -2849,7 +2849,7 @@ fn adjust_for_abi(&mut self, cx: &C, abi: SpecAbi) {
|
|
||||||
|| abi == SpecAbi::RustIntrinsic
|
|
||||||
|| abi == SpecAbi::PlatformIntrinsic
|
|
||||||
{
|
|
||||||
- let fixup = |arg: &mut ArgAbi<'tcx, Ty<'tcx>>| {
|
|
||||||
+ let fixup = |arg: &mut ArgAbi<'tcx, Ty<'tcx>>, is_ret: bool| {
|
|
||||||
if arg.is_ignore() {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
@@ -2887,9 +2887,9 @@ fn adjust_for_abi(&mut self, cx: &C, abi: SpecAbi) {
|
|
||||||
_ => return,
|
|
||||||
}
|
|
||||||
|
|
||||||
- // Pass and return structures up to 2 pointers in size by value, matching `ScalarPair`.
|
|
||||||
- // LLVM will usually pass these in 2 registers, which is more efficient than by-ref.
|
|
||||||
- let max_by_val_size = Pointer.size(cx) * 2;
|
|
||||||
+ // Return structures up to 2 pointers in size by value, matching `ScalarPair`. LLVM
|
|
||||||
+ // will usually return these in 2 registers, which is more efficient than by-ref.
|
|
||||||
+ let max_by_val_size = if is_ret { Pointer.size(cx) * 2 } else { Pointer.size(cx) };
|
|
||||||
let size = arg.layout.size;
|
|
||||||
|
|
||||||
if arg.layout.is_unsized() || size > max_by_val_size {
|
|
||||||
@@ -2901,9 +2901,9 @@ fn adjust_for_abi(&mut self, cx: &C, abi: SpecAbi) {
|
|
||||||
arg.cast_to(Reg { kind: RegKind::Integer, size });
|
|
||||||
}
|
|
||||||
};
|
|
||||||
- fixup(&mut self.ret);
|
|
||||||
+ fixup(&mut self.ret, true);
|
|
||||||
for arg in &mut self.args {
|
|
||||||
- fixup(arg);
|
|
||||||
+ fixup(arg, false);
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
diff --git a/src/test/codegen/arg-return-value-in-reg.rs b/src/test/codegen/return-value-in-reg.rs
|
|
||||||
similarity index 74%
|
|
||||||
rename from src/test/codegen/arg-return-value-in-reg.rs
|
|
||||||
rename to src/test/codegen/return-value-in-reg.rs
|
|
||||||
index a69291d47821..4bc0136c5e32 100644
|
|
||||||
--- a/src/test/codegen/arg-return-value-in-reg.rs
|
|
||||||
+++ b/src/test/codegen/return-value-in-reg.rs
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-//! Check that types of up to 128 bits are passed and returned by-value instead of via pointer.
|
|
||||||
+//! This test checks that types of up to 128 bits are returned by-value instead of via out-pointer.
|
|
||||||
|
|
||||||
// compile-flags: -C no-prepopulate-passes -O
|
|
||||||
// only-x86_64
|
|
||||||
@@ -11,7 +11,7 @@ pub struct S {
|
|
||||||
c: u32,
|
|
||||||
}
|
|
||||||
|
|
||||||
-// CHECK: define i128 @modify(i128{{( %0)?}})
|
|
||||||
+// CHECK: define i128 @modify(%S* noalias nocapture dereferenceable(16) %s)
|
|
||||||
#[no_mangle]
|
|
||||||
pub fn modify(s: S) -> S {
|
|
||||||
S { a: s.a + s.a, b: s.b + s.b, c: s.c + s.c }
|
|
||||||
diff --git a/src/test/codegen/union-abi.rs b/src/test/codegen/union-abi.rs
|
|
||||||
index f282fd237054..afea01e9a2d0 100644
|
|
||||||
--- a/src/test/codegen/union-abi.rs
|
|
||||||
+++ b/src/test/codegen/union-abi.rs
|
|
||||||
@@ -63,16 +63,11 @@ pub union UnionU128{a:u128}
|
|
||||||
#[no_mangle]
|
|
||||||
pub fn test_UnionU128(_: UnionU128) -> UnionU128 { loop {} }
|
|
||||||
|
|
||||||
-pub union UnionU128x2{a:(u128, u128)}
|
|
||||||
-// CHECK: define void @test_UnionU128x2(i128 %_1.0, i128 %_1.1)
|
|
||||||
-#[no_mangle]
|
|
||||||
-pub fn test_UnionU128x2(_: UnionU128x2) { loop {} }
|
|
||||||
-
|
|
||||||
#[repr(C)]
|
|
||||||
-pub union CUnionU128x2{a:(u128, u128)}
|
|
||||||
-// CHECK: define void @test_CUnionU128x2(%CUnionU128x2* {{.*}} %_1)
|
|
||||||
+pub union CUnionU128{a:u128}
|
|
||||||
+// CHECK: define void @test_CUnionU128(%CUnionU128* {{.*}} %_1)
|
|
||||||
#[no_mangle]
|
|
||||||
-pub fn test_CUnionU128x2(_: CUnionU128x2) { loop {} }
|
|
||||||
+pub fn test_CUnionU128(_: CUnionU128) { loop {} }
|
|
||||||
|
|
||||||
pub union UnionBool { b:bool }
|
|
||||||
// CHECK: define zeroext i1 @test_UnionBool(i8 %b)
|
|
||||||
--
|
|
||||||
2.29.2
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
From 9ac837c237568a6c1c5f0e979fcce208cd9c926a Mon Sep 17 00:00:00 2001
|
From 37cb177eb53145103ae72b67562884782dde01c3 Mon Sep 17 00:00:00 2001
|
||||||
From: Ivan Mironov <mironov.ivan@gmail.com>
|
From: Ivan Mironov <mironov.ivan@gmail.com>
|
||||||
Date: Sun, 8 Dec 2019 17:23:08 +0500
|
Date: Sun, 8 Dec 2019 17:23:08 +0500
|
||||||
Subject: [PATCH] Use lld provided by system for wasm
|
Subject: [PATCH] Use lld provided by system for wasm
|
||||||
@ -8,19 +8,19 @@ Subject: [PATCH] Use lld provided by system for wasm
|
|||||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/compiler/rustc_target/src/spec/wasm_base.rs b/compiler/rustc_target/src/spec/wasm_base.rs
|
diff --git a/compiler/rustc_target/src/spec/wasm_base.rs b/compiler/rustc_target/src/spec/wasm_base.rs
|
||||||
index 4c954a1e567c..15c4f1bda5eb 100644
|
index 528a84a8b37c..353d742161d1 100644
|
||||||
--- a/compiler/rustc_target/src/spec/wasm_base.rs
|
--- a/compiler/rustc_target/src/spec/wasm_base.rs
|
||||||
+++ b/compiler/rustc_target/src/spec/wasm_base.rs
|
+++ b/compiler/rustc_target/src/spec/wasm_base.rs
|
||||||
@@ -99,8 +99,7 @@ pub fn options() -> TargetOptions {
|
@@ -89,8 +89,7 @@ macro_rules! args {
|
||||||
// arguments just yet
|
// arguments just yet
|
||||||
limit_rdylib_exports: false,
|
limit_rdylib_exports: false,
|
||||||
|
|
||||||
- // we use the LLD shipped with the Rust toolchain by default
|
- // we use the LLD shipped with the Rust toolchain by default
|
||||||
- linker: Some("rust-lld".to_owned()),
|
- linker: Some("rust-lld".into()),
|
||||||
+ linker: Some("lld".to_owned()),
|
+ linker: Some("lld".into()),
|
||||||
lld_flavor: LldFlavor::Wasm,
|
linker_flavor: LinkerFlavor::WasmLld(Cc::No),
|
||||||
linker_is_gnu: false,
|
|
||||||
|
|
||||||
|
pre_link_args,
|
||||||
--
|
--
|
||||||
2.31.1
|
2.38.1
|
||||||
|
|
||||||
|
51
macros.rust-toolset
Normal file
51
macros.rust-toolset
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
# Explicitly use bindir tools, in case others are in the PATH,
|
||||||
|
# like the rustup shims in a user's ~/.cargo/bin/.
|
||||||
|
#
|
||||||
|
# Since cargo 1.31, install only uses $CARGO_HOME/config, ignoring $PWD.
|
||||||
|
# https://github.com/rust-lang/cargo/issues/6397
|
||||||
|
# But we can set CARGO_HOME locally, which is a good idea anyway to make sure
|
||||||
|
# it never writes to ~/.cargo during rpmbuild.
|
||||||
|
%__cargo %{_bindir}/env CARGO_HOME=.cargo %{_bindir}/cargo
|
||||||
|
%__rustc %{_bindir}/rustc
|
||||||
|
%__rustdoc %{_bindir}/rustdoc
|
||||||
|
|
||||||
|
# Enable optimization, debuginfo, and link hardening.
|
||||||
|
%__global_rustflags -Copt-level=3 -Cdebuginfo=2 -Clink-arg=-Wl,-z,relro,-z,now
|
||||||
|
|
||||||
|
%__global_rustflags_toml [%{lua:
|
||||||
|
for arg in string.gmatch(rpm.expand("%{__global_rustflags}"), "%S+") do
|
||||||
|
print('"' .. arg .. '", ')
|
||||||
|
end}]
|
||||||
|
|
||||||
|
%cargo_prep(V:) (\
|
||||||
|
%{__mkdir} -p .cargo \
|
||||||
|
cat > .cargo/config << EOF \
|
||||||
|
[build]\
|
||||||
|
rustc = "%{__rustc}"\
|
||||||
|
rustdoc = "%{__rustdoc}"\
|
||||||
|
rustflags = %{__global_rustflags_toml}\
|
||||||
|
\
|
||||||
|
[install]\
|
||||||
|
root = "%{buildroot}%{_prefix}"\
|
||||||
|
\
|
||||||
|
[term]\
|
||||||
|
verbose = true\
|
||||||
|
EOF\
|
||||||
|
%if 0%{-V:1}\
|
||||||
|
%{__tar} -xoaf %{S:%{-V*}}\
|
||||||
|
cat >> .cargo/config << EOF \
|
||||||
|
\
|
||||||
|
[source.crates-io]\
|
||||||
|
replace-with = "vendored-sources"\
|
||||||
|
\
|
||||||
|
[source.vendored-sources]\
|
||||||
|
directory = "./vendor"\
|
||||||
|
EOF\
|
||||||
|
%endif\
|
||||||
|
)
|
||||||
|
|
||||||
|
%cargo_build %__cargo build --release %{?_smp_mflags}
|
||||||
|
|
||||||
|
%cargo_test %__cargo test --release %{?_smp_mflags} --no-fail-fast
|
||||||
|
|
||||||
|
%cargo_install %__cargo install --no-track --path .
|
@ -1,6 +1,5 @@
|
|||||||
summary: CI Gating Plan
|
summary: CI Gating Plan
|
||||||
discover:
|
discover:
|
||||||
how: fmf
|
how: fmf
|
||||||
directory: tests
|
|
||||||
execute:
|
execute:
|
||||||
how: beakerlib
|
how: tmt
|
||||||
|
8
rpminspect.yaml
Normal file
8
rpminspect.yaml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
debuginfo:
|
||||||
|
ignore:
|
||||||
|
# i686 has limited debuginfo. From rust.spec
|
||||||
|
# full debuginfo is exhausting memory; just do libstd for now
|
||||||
|
# https://github.com/rust-lang/rust/issues/45854
|
||||||
|
- /usr/lib/debug/usr/bin/rustc-*.i386.debug
|
||||||
|
|
@ -1,19 +0,0 @@
|
|||||||
--- rustc-beta-src/compiler/rustc_codegen_ssa/src/back/link.rs.orig 2021-03-09 10:40:09.755485845 -0800
|
|
||||||
+++ rustc-beta-src/compiler/rustc_codegen_ssa/src/back/link.rs 2021-03-09 10:44:51.257426181 -0800
|
|
||||||
@@ -1279,11 +1279,13 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
fn link_output_kind(sess: &Session, crate_type: CrateType) -> LinkOutputKind {
|
|
||||||
- let kind = match (crate_type, sess.crt_static(Some(crate_type)), sess.relocation_model()) {
|
|
||||||
+ // Only use PIE if explicity specified.
|
|
||||||
+ let explicit_pic = matches!(sess.opts.cg.relocation_model, Some(RelocModel::Pic));
|
|
||||||
+ let kind = match (crate_type, sess.crt_static(Some(crate_type)), explicit_pic) {
|
|
||||||
(CrateType::Executable, _, _) if sess.is_wasi_reactor() => LinkOutputKind::WasiReactorExe,
|
|
||||||
- (CrateType::Executable, false, RelocModel::Pic) => LinkOutputKind::DynamicPicExe,
|
|
||||||
+ (CrateType::Executable, false, true) => LinkOutputKind::DynamicPicExe,
|
|
||||||
(CrateType::Executable, false, _) => LinkOutputKind::DynamicNoPicExe,
|
|
||||||
- (CrateType::Executable, true, RelocModel::Pic) => LinkOutputKind::StaticPicExe,
|
|
||||||
+ (CrateType::Executable, true, true) => LinkOutputKind::StaticPicExe,
|
|
||||||
(CrateType::Executable, true, _) => LinkOutputKind::StaticNoPicExe,
|
|
||||||
(_, true, _) => LinkOutputKind::StaticDylib,
|
|
||||||
(_, false, _) => LinkOutputKind::DynamicDylib,
|
|
@ -1,66 +0,0 @@
|
|||||||
--- rustc-1.56.0-src/Cargo.lock.orig 2021-10-19 18:03:53.928187581 -0700
|
|
||||||
+++ rustc-1.56.0-src/Cargo.lock 2021-10-19 18:05:41.443522980 -0700
|
|
||||||
@@ -877,7 +877,6 @@
|
|
||||||
dependencies = [
|
|
||||||
"cc",
|
|
||||||
"libc",
|
|
||||||
- "libnghttp2-sys",
|
|
||||||
"libz-sys",
|
|
||||||
"openssl-sys",
|
|
||||||
"pkg-config",
|
|
||||||
@@ -1907,16 +1906,6 @@
|
|
||||||
checksum = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
-name = "libnghttp2-sys"
|
|
||||||
-version = "0.1.4+1.41.0"
|
|
||||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
-checksum = "03624ec6df166e79e139a2310ca213283d6b3c30810c54844f307086d4488df1"
|
|
||||||
-dependencies = [
|
|
||||||
- "cc",
|
|
||||||
- "libc",
|
|
||||||
-]
|
|
||||||
-
|
|
||||||
-[[package]]
|
|
||||||
name = "libz-sys"
|
|
||||||
version = "1.1.3"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
--- rustc-1.56.0-src/src/tools/cargo/Cargo.toml.orig 2021-10-19 18:03:53.930187532 -0700
|
|
||||||
+++ rustc-1.56.0-src/src/tools/cargo/Cargo.toml 2021-10-19 18:05:13.663211469 -0700
|
|
||||||
@@ -25,7 +25,7 @@
|
|
||||||
cargo-util = { path = "crates/cargo-util", version = "0.1.1" }
|
|
||||||
crates-io = { path = "crates/crates-io", version = "0.33.0" }
|
|
||||||
crossbeam-utils = "0.8"
|
|
||||||
-curl = { version = "0.4.38", features = ["http2"] }
|
|
||||||
+curl = { version = "0.4.38", features = [] }
|
|
||||||
curl-sys = "0.4.48"
|
|
||||||
env_logger = "0.9.0"
|
|
||||||
pretty_env_logger = { version = "0.4", optional = true }
|
|
||||||
--- rustc-1.56.0-src/src/tools/cargo/src/cargo/core/package.rs.orig 2021-10-18 02:52:56.000000000 -0700
|
|
||||||
+++ rustc-1.56.0-src/src/tools/cargo/src/cargo/core/package.rs 2021-10-19 18:03:53.931187507 -0700
|
|
||||||
@@ -417,14 +417,8 @@
|
|
||||||
// Also note that pipelining is disabled as curl authors have indicated
|
|
||||||
// that it's buggy, and we've empirically seen that it's buggy with HTTP
|
|
||||||
// proxies.
|
|
||||||
- let mut multi = Multi::new();
|
|
||||||
- let multiplexing = config.http_config()?.multiplexing.unwrap_or(true);
|
|
||||||
- multi
|
|
||||||
- .pipelining(false, multiplexing)
|
|
||||||
- .with_context(|| "failed to enable multiplexing/pipelining in curl")?;
|
|
||||||
-
|
|
||||||
- // let's not flood crates.io with connections
|
|
||||||
- multi.set_max_host_connections(2)?;
|
|
||||||
+ let multi = Multi::new();
|
|
||||||
+ let multiplexing = false;
|
|
||||||
|
|
||||||
Ok(PackageSet {
|
|
||||||
packages: package_ids
|
|
||||||
@@ -653,7 +647,7 @@
|
|
||||||
macro_rules! try_old_curl {
|
|
||||||
($e:expr, $msg:expr) => {
|
|
||||||
let result = $e;
|
|
||||||
- if cfg!(target_os = "macos") {
|
|
||||||
+ if cfg!(any(target_os = "linux", target_os = "macos")) {
|
|
||||||
if let Err(e) = result {
|
|
||||||
warn!("ignoring libcurl {} error: {}", $msg, e);
|
|
||||||
}
|
|
@ -1,42 +0,0 @@
|
|||||||
--- rustc-1.56.0-src/Cargo.lock.orig 2021-10-18 02:52:36.000000000 -0700
|
|
||||||
+++ rustc-1.56.0-src/Cargo.lock 2021-10-19 18:00:47.999793566 -0700
|
|
||||||
@@ -1895,7 +1895,6 @@
|
|
||||||
dependencies = [
|
|
||||||
"cc",
|
|
||||||
"libc",
|
|
||||||
- "libssh2-sys",
|
|
||||||
"libz-sys",
|
|
||||||
"openssl-sys",
|
|
||||||
"pkg-config",
|
|
||||||
@@ -1918,20 +1917,6 @@
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
-name = "libssh2-sys"
|
|
||||||
-version = "0.2.19"
|
|
||||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
-checksum = "ca46220853ba1c512fc82826d0834d87b06bcd3c2a42241b7de72f3d2fe17056"
|
|
||||||
-dependencies = [
|
|
||||||
- "cc",
|
|
||||||
- "libc",
|
|
||||||
- "libz-sys",
|
|
||||||
- "openssl-sys",
|
|
||||||
- "pkg-config",
|
|
||||||
- "vcpkg",
|
|
||||||
-]
|
|
||||||
-
|
|
||||||
-[[package]]
|
|
||||||
name = "libz-sys"
|
|
||||||
version = "1.1.3"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
--- rustc-1.56.0-src/vendor/git2/Cargo.toml.orig 2021-10-18 04:05:54.000000000 -0700
|
|
||||||
+++ rustc-1.56.0-src/vendor/git2/Cargo.toml 2021-10-19 17:57:37.960500359 -0700
|
|
||||||
@@ -52,7 +52,7 @@
|
|
||||||
version = "0.1.39"
|
|
||||||
|
|
||||||
[features]
|
|
||||||
-default = ["ssh", "https", "ssh_key_from_memory"]
|
|
||||||
+default = ["https"]
|
|
||||||
https = ["libgit2-sys/https", "openssl-sys", "openssl-probe"]
|
|
||||||
ssh = ["libgit2-sys/ssh"]
|
|
||||||
ssh_key_from_memory = ["libgit2-sys/ssh_key_from_memory"]
|
|
92
rustc-1.70.0-disable-http2.patch
Normal file
92
rustc-1.70.0-disable-http2.patch
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
--- rustc-beta-src/Cargo.lock.orig 2023-05-24 16:49:05.242510531 -0700
|
||||||
|
+++ rustc-beta-src/Cargo.lock 2023-05-24 16:51:11.741865603 -0700
|
||||||
|
@@ -1197,7 +1197,6 @@ checksum = "14d05c10f541ae6f3bc5b3d923c2
|
||||||
|
dependencies = [
|
||||||
|
"cc",
|
||||||
|
"libc",
|
||||||
|
- "libnghttp2-sys",
|
||||||
|
"libz-sys",
|
||||||
|
"openssl-sys",
|
||||||
|
"pkg-config",
|
||||||
|
@@ -2989,16 +2988,6 @@ source = "registry+https://github.com/ru
|
||||||
|
checksum = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
-name = "libnghttp2-sys"
|
||||||
|
-version = "0.1.4+1.41.0"
|
||||||
|
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
-checksum = "03624ec6df166e79e139a2310ca213283d6b3c30810c54844f307086d4488df1"
|
||||||
|
-dependencies = [
|
||||||
|
- "cc",
|
||||||
|
- "libc",
|
||||||
|
-]
|
||||||
|
-
|
||||||
|
-[[package]]
|
||||||
|
name = "libz-sys"
|
||||||
|
version = "1.1.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2023-05-24 16:49:05.244510489 -0700
|
||||||
|
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2023-05-24 16:51:04.683013189 -0700
|
||||||
|
@@ -23,7 +23,7 @@ cargo-platform = { path = "crates/cargo-
|
||||||
|
cargo-util = { path = "crates/cargo-util", version = "0.2.4" }
|
||||||
|
clap = "4.2.0"
|
||||||
|
crates-io = { path = "crates/crates-io", version = "0.36.0" }
|
||||||
|
-curl = { version = "0.4.44", features = ["http2"] }
|
||||||
|
+curl = { version = "0.4.44", features = [] }
|
||||||
|
curl-sys = "0.4.61"
|
||||||
|
env_logger = "0.10.0"
|
||||||
|
filetime = "0.2.9"
|
||||||
|
--- rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs.orig 2023-05-19 19:05:42.000000000 -0700
|
||||||
|
+++ rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs 2023-05-24 16:49:05.244510489 -0700
|
||||||
|
@@ -407,16 +407,9 @@ impl<'cfg> PackageSet<'cfg> {
|
||||||
|
sources: SourceMap<'cfg>,
|
||||||
|
config: &'cfg Config,
|
||||||
|
) -> CargoResult<PackageSet<'cfg>> {
|
||||||
|
- // We've enabled the `http2` feature of `curl` in Cargo, so treat
|
||||||
|
- // failures here as fatal as it would indicate a build-time problem.
|
||||||
|
- let mut multi = Multi::new();
|
||||||
|
- let multiplexing = config.http_config()?.multiplexing.unwrap_or(true);
|
||||||
|
- multi
|
||||||
|
- .pipelining(false, multiplexing)
|
||||||
|
- .with_context(|| "failed to enable multiplexing/pipelining in curl")?;
|
||||||
|
-
|
||||||
|
- // let's not flood crates.io with connections
|
||||||
|
- multi.set_max_host_connections(2)?;
|
||||||
|
+ // Multiplexing is disabled because the system libcurl doesn't support it.
|
||||||
|
+ let multi = Multi::new();
|
||||||
|
+ let multiplexing = false;
|
||||||
|
|
||||||
|
Ok(PackageSet {
|
||||||
|
packages: package_ids
|
||||||
|
--- rustc-beta-src/src/tools/cargo/src/cargo/sources/registry/http_remote.rs.orig 2023-05-24 16:49:05.245510468 -0700
|
||||||
|
+++ rustc-beta-src/src/tools/cargo/src/cargo/sources/registry/http_remote.rs 2023-05-24 16:51:57.916900146 -0700
|
||||||
|
@@ -229,16 +229,8 @@ impl<'cfg> HttpRegistry<'cfg> {
|
||||||
|
}
|
||||||
|
self.fetch_started = true;
|
||||||
|
|
||||||
|
- // We've enabled the `http2` feature of `curl` in Cargo, so treat
|
||||||
|
- // failures here as fatal as it would indicate a build-time problem.
|
||||||
|
- self.multiplexing = self.config.http_config()?.multiplexing.unwrap_or(true);
|
||||||
|
-
|
||||||
|
- self.multi
|
||||||
|
- .pipelining(false, self.multiplexing)
|
||||||
|
- .with_context(|| "failed to enable multiplexing/pipelining in curl")?;
|
||||||
|
-
|
||||||
|
- // let's not flood the server with connections
|
||||||
|
- self.multi.set_max_host_connections(2)?;
|
||||||
|
+ // Multiplexing is disabled because the system libcurl doesn't support it.
|
||||||
|
+ self.multiplexing = false;
|
||||||
|
|
||||||
|
if !self.quiet {
|
||||||
|
self.config
|
||||||
|
--- rustc-beta-src/src/tools/cargo/src/cargo/util/network/mod.rs.orig 2023-05-19 19:05:42.000000000 -0700
|
||||||
|
+++ rustc-beta-src/src/tools/cargo/src/cargo/util/network/mod.rs 2023-05-24 16:49:05.245510468 -0700
|
||||||
|
@@ -25,7 +25,7 @@ impl<T> PollExt<T> for Poll<T> {
|
||||||
|
macro_rules! try_old_curl {
|
||||||
|
($e:expr, $msg:expr) => {
|
||||||
|
let result = $e;
|
||||||
|
- if cfg!(target_os = "macos") {
|
||||||
|
+ if cfg!(any(target_os = "linux", target_os = "macos")) {
|
||||||
|
if let Err(e) = result {
|
||||||
|
warn!("ignoring libcurl {} error: {}", $msg, e);
|
||||||
|
}
|
43
rustc-1.70.0-disable-libssh2.patch
Normal file
43
rustc-1.70.0-disable-libssh2.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
--- rustc-beta-src/Cargo.lock.orig 2023-05-19 19:02:31.000000000 -0700
|
||||||
|
+++ rustc-beta-src/Cargo.lock 2023-05-24 16:36:33.312232441 -0700
|
||||||
|
@@ -2967,7 +2967,6 @@
|
||||||
|
dependencies = [
|
||||||
|
"cc",
|
||||||
|
"libc",
|
||||||
|
- "libssh2-sys",
|
||||||
|
"libz-sys",
|
||||||
|
"openssl-sys",
|
||||||
|
"pkg-config",
|
||||||
|
@@ -3000,20 +2999,6 @@
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
-name = "libssh2-sys"
|
||||||
|
-version = "0.3.0"
|
||||||
|
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
-checksum = "2dc8a030b787e2119a731f1951d6a773e2280c660f8ec4b0f5e1505a386e71ee"
|
||||||
|
-dependencies = [
|
||||||
|
- "cc",
|
||||||
|
- "libc",
|
||||||
|
- "libz-sys",
|
||||||
|
- "openssl-sys",
|
||||||
|
- "pkg-config",
|
||||||
|
- "vcpkg",
|
||||||
|
-]
|
||||||
|
-
|
||||||
|
-[[package]]
|
||||||
|
name = "libz-sys"
|
||||||
|
version = "1.1.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
--- rustc-beta-src/vendor/git2/Cargo.toml.orig 2023-05-19 21:16:57.000000000 -0700
|
||||||
|
+++ rustc-beta-src/vendor/git2/Cargo.toml 2023-05-24 16:33:42.043813439 -0700
|
||||||
|
@@ -55,9 +55,7 @@
|
||||||
|
|
||||||
|
[features]
|
||||||
|
default = [
|
||||||
|
- "ssh",
|
||||||
|
"https",
|
||||||
|
- "ssh_key_from_memory",
|
||||||
|
]
|
||||||
|
https = [
|
||||||
|
"libgit2-sys/https",
|
21
rustc-1.70.0-rust-gdb-substitute-path.patch
Normal file
21
rustc-1.70.0-rust-gdb-substitute-path.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb
|
||||||
|
index 9abed30ea6f7..e4bf55df3688 100755
|
||||||
|
--- a/src/etc/rust-gdb
|
||||||
|
+++ b/src/etc/rust-gdb
|
||||||
|
@@ -13,8 +13,6 @@ fi
|
||||||
|
# Find out where the pretty printer Python module is
|
||||||
|
RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)"
|
||||||
|
GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc"
|
||||||
|
-# Get the commit hash for path remapping
|
||||||
|
-RUSTC_COMMIT_HASH="$("$RUSTC" -vV | sed -n 's/commit-hash: \([a-zA-Z0-9_]*\)/\1/p')"
|
||||||
|
|
||||||
|
# Run GDB with the additional arguments that load the pretty printers
|
||||||
|
# Set the environment variable `RUST_GDB` to overwrite the call to a
|
||||||
|
@@ -23,6 +21,6 @@ RUST_GDB="${RUST_GDB:-gdb}"
|
||||||
|
PYTHONPATH="$PYTHONPATH:$GDB_PYTHON_MODULE_DIRECTORY" exec ${RUST_GDB} \
|
||||||
|
--directory="$GDB_PYTHON_MODULE_DIRECTORY" \
|
||||||
|
-iex "add-auto-load-safe-path $GDB_PYTHON_MODULE_DIRECTORY" \
|
||||||
|
- -iex "set substitute-path /rustc/$RUSTC_COMMIT_HASH $RUSTC_SYSROOT/lib/rustlib/src/rust" \
|
||||||
|
+ -iex "set substitute-path @BUILDDIR@ $RUSTC_SYSROOT/lib/rustlib/src/rust" \
|
||||||
|
"$@"
|
||||||
|
|
3
sources
3
sources
@ -1 +1,2 @@
|
|||||||
SHA512 (rustc-1.56.1-src.tar.xz) = 193468e211cde9ebc5f6e30b8e3733b79bd8710fe6dd45c7ed8d4392f91010d30466787afd4d0b2041cd7dd994924fee8ad111048824e248bd994959e55bf15f
|
SHA512 (rustc-1.70.0-src.tar.xz) = 21b35185fdcc35a059ee5ef6dca2b68f5f1d199e97f425a571cfc318a852c36a57bccf68e7673b4cb7cd83128f30d0b3eb93009a978f3ba3909b7eee50d40631
|
||||||
|
SHA512 (wasi-libc-wasi-sdk-20.tar.gz) = e264240dc7dbcf6398c8ca09bc108298f4a8aa955af22de5a3015fbcde81cb09dd83cd48349090082d5de0e8a3dbcf746c7b14657c67657b3f2f1ab28bb9cf05
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
SHA512 (rustc-1.56.1-src.tar.xz) = 193468e211cde9ebc5f6e30b8e3733b79bd8710fe6dd45c7ed8d4392f91010d30466787afd4d0b2041cd7dd994924fee8ad111048824e248bd994959e55bf15f
|
|
||||||
SHA512 (rust-1.55.0-aarch64-unknown-linux-gnu.tar.xz) = 223a024701762675adb5c7c59fc54717d23f2ae4ea5984cd1cc0568d39c5207aa07a104ddad68da057f6434eecf23415ae13be2235797897d8d0f7cb5f2fc4b5
|
|
||||||
SHA512 (rust-1.55.0-armv7-unknown-linux-gnueabihf.tar.xz) = b06b3c36b5ca35391030f3c9d2f64725263ac987002923d9263c4c27877d91453db3191e01d40c78f439a48f83da220926a2841337d815dd333591d453f2fc0e
|
|
||||||
SHA512 (rust-1.55.0-i686-unknown-linux-gnu.tar.xz) = a0222c68c63ddd67afee552dd9ed636ea02fd3f26000deb7a1dc47806a1ec0b2fafaed903d4dabb0fddeb9e4026bf0da8bb2161c14db24d2883c084932e306b6
|
|
||||||
SHA512 (rust-1.55.0-powerpc64le-unknown-linux-gnu.tar.xz) = 67c98c7cc44482082daa5daa3926dc92782b373b3173181413e68d59ea07f6eee61d46f3832a3fce18bdc44dd563e2e1f85709435e04c599b299981ecd932a9f
|
|
||||||
SHA512 (rust-1.55.0-s390x-unknown-linux-gnu.tar.xz) = 7fc83c8723493864a470f32a05db9e16ecba0ff621080d8a3a257e6f42a37bfcc8d364d71aff696991dd85635f6596ffa72efdefee1620c308984536b48d212a
|
|
||||||
SHA512 (rust-1.55.0-x86_64-unknown-linux-gnu.tar.xz) = 4bc304727b1e9459194a9a9ad5c8e1fe63501f01047d479585de6708365b3f59e09aade64c7f4969df204f8bbcf9de9508745d2b96bc25cb74ed093f8053a4d6
|
|
@ -48,7 +48,10 @@ rlJournalStart
|
|||||||
rlRun "rpm -ivh $SRPM"
|
rlRun "rpm -ivh $SRPM"
|
||||||
rlRun SPECDIR="$(rpm -E '%{_specdir}')"
|
rlRun SPECDIR="$(rpm -E '%{_specdir}')"
|
||||||
|
|
||||||
rlRun "yum-builddep -y ${SPECDIR}/${PKG_TO_BUILD}.spec ${YUM_SWITCHES}"
|
# librsvg2 contains dynamic dependencies. builddep needs to be run
|
||||||
|
# from the srpm (not the spec file) to be able to generate them:
|
||||||
|
# https://fedoraproject.org/wiki/Changes/DynamicBuildRequires#rpmbuild
|
||||||
|
rlRun "yum-builddep -y ${SRPM} ${YUM_SWITCHES}"
|
||||||
rlPhaseEnd
|
rlPhaseEnd
|
||||||
|
|
||||||
rlPhaseStartTest
|
rlPhaseStartTest
|
||||||
|
Loading…
Reference in New Issue
Block a user