Restore libstd.so for uses like evcxr
Ref: https://github.com/evcxr/evcxr/issues/394
This commit is contained in:
parent
780493632f
commit
1013e8f026
1 changed files with 13 additions and 7 deletions
20
rust.spec
20
rust.spec
|
|
@ -925,12 +925,6 @@ rm -rf ./build/dist/ ./build/tmp/
|
|||
# Some of the components duplicate-install binaries, leaving backups we don't want
|
||||
rm -f %{buildroot}%{_bindir}/*.old
|
||||
|
||||
# We don't want to ship the shared standard library, because it has no stable ABI.
|
||||
# (and if we merely %%exclude these, then rpmbuild still packages build-id links)
|
||||
find %{buildroot}%{rustlibdir} -type f \
|
||||
'(' -name '*.so' -o -name '*.dll' -o -name '*.dll.a' ')' \
|
||||
-exec rm -v '{}' '+'
|
||||
|
||||
# Make sure the compiler's shared libraries are in the proper libdir
|
||||
%if "%{_libdir}" != "%{common_libdir}"
|
||||
mkdir -p %{buildroot}%{_libdir}
|
||||
|
|
@ -942,6 +936,13 @@ find %{buildroot}%{common_libdir} -maxdepth 1 -type f -name '*.so' \
|
|||
find %{buildroot}%{_libdir} -maxdepth 1 -type f -name '*.so' \
|
||||
-exec chmod -v +x '{}' '+'
|
||||
|
||||
# The shared standard library is excluded from Provides, because it has no
|
||||
# stable ABI. However, we still ship it alongside the static target libraries
|
||||
# to enable some niche local use-cases, like the `evcxr` REPL.
|
||||
# Make sure those libraries are also executable for debuginfo extraction.
|
||||
find %{buildroot}%{rustlibdir} -type f -name '*.so' \
|
||||
-exec chmod -v +x '{}' '+'
|
||||
|
||||
# Remove installer artifacts (manifests, uninstall scripts, etc.)
|
||||
find %{buildroot}%{rustlibdir} -maxdepth 1 -type f -exec rm -v '{}' '+'
|
||||
|
||||
|
|
@ -1044,7 +1045,7 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
|
|||
%doc README.md
|
||||
%{_bindir}/rustc
|
||||
%{_bindir}/rustdoc
|
||||
%{_libdir}/*.so
|
||||
%{_libdir}/librustc_driver-*.so
|
||||
%{_libexecdir}/rust-analyzer-proc-macro-srv
|
||||
%{_mandir}/man1/rustc.1*
|
||||
%{_mandir}/man1/rustdoc.1*
|
||||
|
|
@ -1055,6 +1056,7 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
|
|||
%dir %{rustlibdir}/%{rust_triple}
|
||||
%dir %{rustlibdir}/%{rust_triple}/lib
|
||||
%{rustlibdir}/%{rust_triple}/lib/*.rlib
|
||||
%{rustlibdir}/%{rust_triple}/lib/*.so
|
||||
|
||||
%global target_files() \
|
||||
%files std-static-%1 \
|
||||
|
|
@ -1066,11 +1068,15 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
|
|||
%if %target_enabled i686-pc-windows-gnu
|
||||
%target_files i686-pc-windows-gnu
|
||||
%{rustlibdir}/i686-pc-windows-gnu/lib/rs*.o
|
||||
%exclude %{rustlibdir}/i686-pc-windows-gnu/lib/*.dll
|
||||
%exclude %{rustlibdir}/i686-pc-windows-gnu/lib/*.dll.a
|
||||
%endif
|
||||
|
||||
%if %target_enabled x86_64-pc-windows-gnu
|
||||
%target_files x86_64-pc-windows-gnu
|
||||
%{rustlibdir}/x86_64-pc-windows-gnu/lib/rs*.o
|
||||
%exclude %{rustlibdir}/x86_64-pc-windows-gnu/lib/*.dll
|
||||
%exclude %{rustlibdir}/x86_64-pc-windows-gnu/lib/*.dll.a
|
||||
%endif
|
||||
|
||||
%if %target_enabled wasm32-unknown-unknown
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue