@@ -76,8 +76,8 @@ BuildRequires: cargo >= %{bootstrap_cargo}
7676BuildConflicts: %{name } > %{version }
7777%endif
7878%ifarch x32
79- BuildRequires: glibc-devel(x32 )
80- BuildRequires: glibc-devel(x86_64 )
79+ BuildRequires: glibc-devel(x86-64 )
80+ BuildRequires: glibc-devel(x86-x32 )
8181%if "%{_host_cpu }" == "x86_64 "
8282# building on x86_64 host with --target x32-pld-linux
8383BuildRequires: curl-devel
@@ -90,18 +90,29 @@ BuildRequires: zlib-devel
9090%else
9191# building x86_64-hosted crosscompiler on x32 host
9292BuildRequires: curl-devel(x86-64)
93+ BuildRequires: curl-devel(x86-x32)
9394BuildRequires: gcc-multilib-64
9495BuildRequires: libgit2-devel(x86-64) >= 1.1.0
96+ BuildRequires: libgit2-devel(x86-x32) >= 1.1.0
9597BuildRequires: libstdc++-multilib-64-devel
96- %{?with_system_llvm:BuildRequires: llvm-devel(x86-64) >= 9.0}
98+ %if %{with system_llvm }
99+ BuildRequires: llvm-devel(x86-64) >= 9.0
100+ BuildRequires: llvm-devel(x86-x32) >= 9.0
101+ %endif
97102BuildRequires: openssl-devel(x86-64)
103+ BuildRequires: openssl-devel(x86-x32)
98104BuildRequires: zlib-devel(x86-64)
105+ BuildRequires: zlib-devel(x86-x32)
99106%endif
100107%endif
101108# The C compiler is needed at runtime just for linking. Someday rustc might
102109# invoke the linker directly, and then we'll only need binutils.
103110# https://github.com/rust-lang/rust/issues/11937
104111Requires: gcc
112+ Requires: %{name }-std%{?_isa } = %{version }-%{release }
113+ %ifarch x32
114+ Requires: %{name }-std(x86-64) = %{version }-%{release }
115+ %endif
105116# Only x86_64 and i686 are Tier 1 platforms at this time.
106117# x32 is Tier 2, only rust-std is available (no rustc or cargo).
107118# https://doc.rust-lang.org/nightly/rustc/platform-support.html
@@ -165,11 +176,35 @@ Rust to systemowy język programowania działający bardzo szybko,
165176zapobiegający naruszeniom ochrony pamięci i gwarantujący
166177bezpieczną wielowątkowość.
167178
179+ %package analysis
180+ Summary: Metadata about the standard library
181+ Summary(pl.UTF-8): Metadane o standardowej bibliotece
182+ Group: Development/Tools
183+ Requires: %{name }%{?_isa } = %{version }-%{release }
184+
185+ %description analysis
186+ Metadata about the standard library.
187+
188+ %description analysis -l pl.UTF-8
189+ Metadane o standardowej bibliotece.
190+
191+ %package std
192+ Summary: Standard library for Rust
193+ Summary(pl.UTF-8): Standardowa biblioteka Rusta
194+ Group: Development/Tools
195+ Requires: %{name }%{?_isa } = %{version }-%{release }
196+
197+ %description std
198+ Standard library for Rust.
199+
200+ %description std -l pl.UTF-8
201+ Standardowa biblioteka Rusta.
202+
168203%package analyzer
169204Summary: Implementation of Language Server Protocol for Rust
170205Summary(pl.UTF-8): Implementacja Language Server Protocol dla Rusta
171206Group: Development/Tools
172- Requires: %{name } = %{version }-%{release }
207+ Requires: %{name }%{? _isa } = %{version }-%{release }
173208
174209%description analyzer
175210Implementation of Language Server Protocol for Rust.
@@ -226,7 +261,8 @@ odpluskwianie programów w języku Rust.
226261Summary: Rust Language Server for IDE integration
227262Summary(pl.UTF-8): Rust Language Server do integracji z IDE
228263Group: Development/Tools
229- Requires: %{name } = %{version }-%{release }
264+ Requires: %{name }%{?_isa } = %{version }-%{release }
265+ Requires: %{name }-analysis%{?_isa } = %{version }-%{release }
230266
231267%description rls
232268Rust Language Server for IDE integration.
@@ -252,7 +288,7 @@ programowania Rust i jego biblioteki standardowej.
252288Summary: Rust's package manager and build tool
253289Summary(pl.UTF-8): Zarządca pakietów i narzędzie do budowania
254290Group: Development/Tools
255- Requires: %{name }
291+ Requires: %{name }%{? _isa }
256292
257293%description -n cargo
258294Cargo is a tool that allows Rust projects to declare their various
@@ -435,8 +471,14 @@ rm -rf $RPM_BUILD_ROOT
435471%{_mandir }/man1/rustc.1*
436472%{_mandir }/man1/rustdoc.1*
437473%dir %{rustlibdir }
438- %dir %{rustlibdir }/%{rust_triple }
474+
475+ %files analysis
476+ %defattr(644,root,root,755)
439477%{rustlibdir }/%{rust_triple }/analysis
478+
479+ %files std
480+ %defattr(644,root,root,755)
481+ %dir %{rustlibdir }/%{rust_triple }
440482%dir %{rustlibdir }/%{rust_triple }/lib
441483%attr(755,root,root) %{rustlibdir }/%{rust_triple }/lib/* .so
442484%{rustlibdir }/%{rust_triple }/lib/* .rlib
0 commit comments