diff --git a/0003-Disable-embedding-timestamp-information.patch b/0003-Disable-embedding-timestamp-information.patch new file mode 100644 index 0000000..535530a --- /dev/null +++ b/0003-Disable-embedding-timestamp-information.patch @@ -0,0 +1,25 @@ +From 99735fbdb242e1d853456913266944ff6e1f24f3 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?= +Date: Wed, 6 Jul 2016 13:07:37 +0200 +Subject: [PATCH] Disable embedding timestamp information + +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/llvm/CMakeLists.txt b/src/llvm/CMakeLists.txt +index 4dd43e7..de5e766 100644 +--- a/src/llvm/CMakeLists.txt ++++ b/src/llvm/CMakeLists.txt +@@ -230,7 +230,7 @@ set(LLVM_EXPERIMENTAL_TARGETS_TO_BUILD "" + option(BUILD_SHARED_LIBS + "Build all libraries as shared libraries instead of static" OFF) + +-option(LLVM_ENABLE_TIMESTAMPS "Enable embedding timestamp information in build" ON) ++option(LLVM_ENABLE_TIMESTAMPS "Enable embedding timestamp information in build" OFF) + if(LLVM_ENABLE_TIMESTAMPS) + set(ENABLE_TIMESTAMPS 1) + endif() +-- +2.9.0 + diff --git a/rust.changes b/rust.changes index 70663f8..034dba9 100644 --- a/rust.changes +++ b/rust.changes @@ -1,17 +1,8 @@ ------------------------------------------------------------------- -Fri Dec 16 00:30:03 UTC 2016 - luke.nukem.jones@gmail.com +Fri Dec 16 23:27:42 UTC 2016 - luke.nukem.jones@gmail.com -- Update version to v1.13 - + Becasue the changelist is rather large, please see; - ihttps://raw.githubusercontent.com/rust-lang/rust/master/RELEASES.md -- Remove patch 0003-Disable-embedding-timestamp-information.patch - + fixed upstream -- Remove bootstrap package build -- Add required bootstrap binaries in to the main src rpm - + The purpose of this is to enable bulding all targets and - versions without the need to have packaged a previous version - of rust. This means all packaged versions should be buildable - on their own. +- Revert from v1.13 to v1.11 in preparation for alternative + packaging. ------------------------------------------------------------------- Wed Nov 2 08:42:44 UTC 2016 - matwey.kornilov@gmail.com diff --git a/rust.spec b/rust.spec index 1235914..da00c01 100644 --- a/rust.spec +++ b/rust.spec @@ -16,11 +16,13 @@ # -%global rustc_version 1_13 -%global bootstrap 1.12.1 +%bcond_without bootstrap_tarball + +%global rustc_version 1_11 +%global rustc_build_version 1_10 Name: rust -Version: 1.13.0 +Version: 1.11.0 Release: 0 Summary: A systems programming language License: MIT or Apache-2.0 @@ -28,8 +30,6 @@ Group: Development/Languages/Other Url: http://www.rust-lang.org ExclusiveArch: %ix86 x86_64 %arm aarch64 # renamed to match upstream and other distros -Obsoletes: rustc-1_10 -Obsoletes: rustc-1_11 Obsoletes: rustc-1_9 Provides: rustc = %{version} Provides: rustc-stable = %{version} @@ -37,23 +37,22 @@ Provides: rustc-stable = %{version} # some alternatives system should be implemented Conflicts: rustc < %{version} +BuildRequires: rustc-%{rustc_build_version} + Recommends: cargo Source0: https://static.rust-lang.org/dist/rustc-%{version}-src.tar.gz -Source1: rustc-%{bootstrap}-aarch64-unknown-linux-gnu.tar.gz -Source2: rustc-%{bootstrap}-armv7-unknown-linux-gnueabihf.tar.gz -Source3: rustc-%{bootstrap}-arm-unknown-linux-gnueabihf.tar.gz -Source4: rustc-%{bootstrap}-x86_64-unknown-linux-gnu.tar.gz -Source5: rustc-%{bootstrap}-i686-unknown-linux-gnu.tar.gz -ExclusiveArch: armv7hl armv6hl aarch64 %ix86 x86_64 +#use snap.sh to update following lines from "magic" constanst from src/snapshots.txt Source100: %{name}-rpmlintrc +# PATCH-FIX-OPENSUSE: Disable embedding timestamp information +Patch1: 0003-Disable-embedding-timestamp-information.patch # PATCH-FIX-OPENSUSE: Set DT_SONAME when building dylibs -Patch1: add-soname.patch +Patch2: add-soname.patch # PATCH-FIX-UPSTREAM build armv7 on armv7 -Patch2: 0001-Fix-armv7-autodetection.patch +Patch3: 0001-Fix-armv7-autodetection.patch # PATCH-FIX-UPSTREAM build arm on armv6 -Patch3: 0002-Add-armv6l-autodetection.patch +Patch4: 0002-Add-armv6l-autodetection.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -100,59 +99,41 @@ Obsoletes: rust-1_10-gdb = %{version} Provides: rust-1_10-gdb <= %{version} Obsoletes: rustc-1_10-gdb = %{version} Provides: rustc-1_10-gdb <= %{version} -Obsoletes: rust-1_11-gdb = %{version} -Obsoletes: rustc-1_11-gdb = %{version} Supplements: packageand(%{name}:gdb) %description gdb This subpackage provides pretty printers and a wrapper script for invoking gdb on rust binaries. + +%if %{with bootstrap_tarball} +%package bootstrap-tarball +Summary: Bootstrap tarball with rust binaries +Group: Development/Languages/Other + +%description bootstrap-tarball +This subpackage provides tarball with rust binaries used for rust-bootstrap +package. +%endif + %prep -%setup -D -q -n rustc-%{version} +%setup -q -n rustc-%{version} %patch1 -p1 %patch2 -p1 %patch3 -p1 - -%ifarch aarch64 -tar -xvzf $RPM_SOURCE_DIR/rustc-%{bootstrap}-aarch64-unknown-linux-gnu.tar.gz -%endif -%ifarch armv7hl -tar -xvzf $RPM_SOURCE_DIR/rustc-%{bootstrap}-armv7-unknown-linux-gnueabihf.tar.gz -%endif -%ifarch armv6hl -tar -xvzf $RPM_SOURCE_DIR/rustc-%{bootstrap}-arm-unknown-linux-gnueabihf.tar.gz -%endif -%ifarch x86_64 -tar -xvzf $RPM_SOURCE_DIR/rustc-%{bootstrap}-x86_64-unknown-linux-gnu.tar.gz -%endif -%ifarch %ix86 -tar -xvzf $RPM_SOURCE_DIR/rustc-%{bootstrap}-i686-unknown-linux-gnu.tar.gz -%endif +%patch4 -p1 %build -pwd export CPPFLAGS="$RPM_OPT_FLAGS" # eliminate complain from RPMlint ./configure \ --enable-local-rust \ - %ifarch aarch64 - --local-rust-root=%{_builddir}/rustc-%{version}/rustc-%{bootstrap}-aarch64-unknown-linux-gnu/rustc/ \ - %endif - %ifarch armv7hl - --local-rust-root=%{_builddir}/rustc-%{version}/rustc-%{bootstrap}-armv7-unknown-linux-gnueabihf/rustc/ \ - %endif - %ifarch armv6hl - --local-rust-root=%{_builddir}/rustc-%{version}/rustc-%{bootstrap}-arm-unknown-linux-gnueabihf/rustc/ \ - %endif - %ifarch x86_64 - --local-rust-root=%{_builddir}/rustc-%{version}/rustc-%{bootstrap}-x86_64-unknown-linux-gnu/rustc/ \ - %endif - %ifarch %ix86 - --local-rust-root=%{_builddir}/rustc-%{version}/rustc-%{bootstrap}-i686-unknown-linux-gnu/rustc/ \ - %endif + --local-rust-root=%{_prefix} \ --prefix=%{_prefix} \ --release-channel=stable make %{?_smp_mflags} +%if %{with bootstrap_tarball} +make %{?_smp_mflags} dist-tar-bins +%endif %install make %{?_smp_mflags} install DESTDIR=$RPM_BUILD_ROOT @@ -176,6 +157,11 @@ mv %{buildroot}%{_prefix}/share/doc/rust \ %fdupes $RPM_BUILD_ROOT%{_prefix} %endif +%if %{with bootstrap_tarball} +mkdir -p %{buildroot}%{_prefix}/share/rust-bootstrap-tarball +mv dist/rustc-*.tar.gz %{buildroot}%{_prefix}/share/rust-bootstrap-tarball +%endif + %post -p /sbin/ldconfig %postun -p /sbin/ldconfig @@ -200,4 +186,11 @@ mv %{buildroot}%{_prefix}/share/doc/rust \ %{_prefix}/lib/rustlib/etc/gdb_load_rust_pretty_printers.py %{_prefix}/lib/rustlib/etc/gdb_rust_pretty_printing.py +%if %{with bootstrap_tarball} +%files bootstrap-tarball +%defattr(-,root,root,-) +%dir %{_prefix}/share/rust-bootstrap-tarball +%{_prefix}/share/rust-bootstrap-tarball/rustc-*.tar.gz +%endif + %changelog diff --git a/rustc-1.11.0-src.tar.gz b/rustc-1.11.0-src.tar.gz new file mode 100644 index 0000000..9d06ceb --- /dev/null +++ b/rustc-1.11.0-src.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3685034a78e70637bdfa3117619f759f2481002fd9abbc78cc0f737c9974de6a +size 26126471