From 6ddb694dd858e992ad99fc71da8a11da286fb05fe90944a5e39e269169ee8ac6 Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Tue, 14 Feb 2017 02:05:44 +0000
Subject: [PATCH 01/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=65

---
 _constraints | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/_constraints b/_constraints
index 7a401ec..a42ffec 100644
--- a/_constraints
+++ b/_constraints
@@ -6,7 +6,7 @@
       <size unit="G">4</size>
     </memory>
     <disk>
-      <size unit="G">40</size>
+      <size unit="G">20</size>
     </disk>
   </hardware>
   <overwrite>

From 9ed84e474be07ea2ef1f607168d78d07a5964cdbedd2e77a9fa0a2b122665d26 Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Tue, 14 Feb 2017 02:26:36 +0000
Subject: [PATCH 02/10] Update spec to bootstrap only for releases less than TW
 or Leap 42.2. These releases as yet have no successful builds for which to
 build n+1 versions.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=66
---
 rust.spec | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/rust.spec b/rust.spec
index c03d057..9cd5d1b 100644
--- a/rust.spec
+++ b/rust.spec
@@ -62,24 +62,23 @@ Conflicts:      rustc-bootstrap
 Provides:       rustc = %{version}
 Provides:       rustc-stable = %{version}
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+# Restrict the architectures as building rust relies on being initially
+# bootstrapped before we can build the n+1 release
 ExclusiveArch:  %{ix86} x86_64 %{arm} aarch64 ppc64 ppc64le s390x
 
 %if 0%{?suse_version}
 BuildRequires:  fdupes
 %endif
 
-%ifarch %{arm} aarch64 ppc64 ppc64le s390x
-BuildRequires:  cargo-bootstrap
-BuildRequires:  rustc-bootstrap >= %{prev_version}
-%else
-%if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} < 120300)
+# There are no successful builds for less than TW or Leap 42.2, so bootstrap
+# until such time that there is.
+%if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} < 120200)
 BuildRequires:  cargo-bootstrap
 BuildRequires:  rustc-bootstrap >= %{prev_version}
 %else
 BuildRequires:  cargo
 BuildRequires:  rust >= %{prev_version}
 %endif
-%endif
 
 %description
 Rust is a systems programming language focused on three goals:

From f3ef5d0f6eebeef021e1f44c83ca6551363e72289a51f3f10848b7fdf7254769 Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Tue, 14 Feb 2017 09:31:28 +0000
Subject: [PATCH 03/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=67

---
 rust.spec | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/rust.spec b/rust.spec
index 9cd5d1b..fdcd5ea 100644
--- a/rust.spec
+++ b/rust.spec
@@ -70,6 +70,10 @@ ExclusiveArch:  %{ix86} x86_64 %{arm} aarch64 ppc64 ppc64le s390x
 BuildRequires:  fdupes
 %endif
 
+%ifarch %{arm} aarch64 ppc64 ppc64le s390x
+BuildRequires:  cargo-bootstrap
+BuildRequires:  rustc-bootstrap >= %{prev_version}
+%else
 # There are no successful builds for less than TW or Leap 42.2, so bootstrap
 # until such time that there is.
 %if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} < 120200)
@@ -79,6 +83,7 @@ BuildRequires:  rustc-bootstrap >= %{prev_version}
 BuildRequires:  cargo
 BuildRequires:  rust >= %{prev_version}
 %endif
+%endif
 
 %description
 Rust is a systems programming language focused on three goals:

From 1a43cf6465a350a1f1f8ed83f0fc2a0c603f216263d6aca8de3b10919aee6a8c Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Tue, 14 Feb 2017 09:35:33 +0000
Subject: [PATCH 04/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=68

---
 rust.spec | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/rust.spec b/rust.spec
index fdcd5ea..7569b38 100644
--- a/rust.spec
+++ b/rust.spec
@@ -70,20 +70,15 @@ ExclusiveArch:  %{ix86} x86_64 %{arm} aarch64 ppc64 ppc64le s390x
 BuildRequires:  fdupes
 %endif
 
-%ifarch %{arm} aarch64 ppc64 ppc64le s390x
-BuildRequires:  cargo-bootstrap
-BuildRequires:  rustc-bootstrap >= %{prev_version}
-%else
 # There are no successful builds for less than TW or Leap 42.2, so bootstrap
 # until such time that there is.
-%if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} < 120200)
+%if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120300)
 BuildRequires:  cargo-bootstrap
 BuildRequires:  rustc-bootstrap >= %{prev_version}
 %else
 BuildRequires:  cargo
 BuildRequires:  rust >= %{prev_version}
 %endif
-%endif
 
 %description
 Rust is a systems programming language focused on three goals:

From 1ffad44a959de36268092bf020281979b7b3ad4c1c2dc920a38514b852b3bfa3 Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Tue, 14 Feb 2017 09:37:20 +0000
Subject: [PATCH 05/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=69

---
 rust.spec | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/rust.spec b/rust.spec
index 7569b38..ff364ee 100644
--- a/rust.spec
+++ b/rust.spec
@@ -70,6 +70,10 @@ ExclusiveArch:  %{ix86} x86_64 %{arm} aarch64 ppc64 ppc64le s390x
 BuildRequires:  fdupes
 %endif
 
+%ifarch s390x
+BuildRequires:  cargo-bootstrap
+BuildRequires:  rustc-bootstrap >= %{prev_version}
+%else
 # There are no successful builds for less than TW or Leap 42.2, so bootstrap
 # until such time that there is.
 %if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120300)
@@ -79,6 +83,7 @@ BuildRequires:  rustc-bootstrap >= %{prev_version}
 BuildRequires:  cargo
 BuildRequires:  rust >= %{prev_version}
 %endif
+%endif
 
 %description
 Rust is a systems programming language focused on three goals:

From d60fb8bad245d6f07b774594707db59d1e698c5f7099f16695f32d7ec796f934 Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Tue, 14 Feb 2017 20:37:10 +0000
Subject: [PATCH 06/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=70

---
 rust.spec | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/rust.spec b/rust.spec
index ff364ee..acb0ca3 100644
--- a/rust.spec
+++ b/rust.spec
@@ -180,6 +180,10 @@ sed -e '/*\//q' src/libbacktrace/backtrace.h \
 
 %files
 %defattr(-,root,root,-)
+# The SLES-12 macros don't appear to take ownership of this directory?
+%if 0%{?sle_version} <= 120300
+%dir %{_datadir}/licenses
+%endif
 %license COPYRIGHT LICENSE-APACHE LICENSE-MIT
 %license src/libbacktrace/LICENSE-libbacktrace
 %license src/rt/hoedown/LICENSE-hoedown
@@ -210,6 +214,9 @@ sed -e '/*\//q' src/libbacktrace/backtrace.h \
 
 %files doc
 %defattr(-,root,root)
+%if 0%{?sle_version} <= 120300
+%dir %{_datadir}/licenses
+%endif
 %license %{_docdir}/%{name}/html/FiraSans-LICENSE.txt
 %license %{_docdir}/%{name}/html/Heuristica-LICENSE.txt
 %license %{_docdir}/%{name}/html/LICENSE-APACHE.txt

From 8eb4debe4a5a73e0c13ec3ebc4162d95fc872e95025e24058a120113d084c291 Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Tue, 14 Feb 2017 20:37:43 +0000
Subject: [PATCH 07/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=71

---
 rust.spec | 1 +
 1 file changed, 1 insertion(+)

diff --git a/rust.spec b/rust.spec
index acb0ca3..5bc1db3 100644
--- a/rust.spec
+++ b/rust.spec
@@ -214,6 +214,7 @@ sed -e '/*\//q' src/libbacktrace/backtrace.h \
 
 %files doc
 %defattr(-,root,root)
+# The SLES-12 macros don't appear to take ownership of this directory?
 %if 0%{?sle_version} <= 120300
 %dir %{_datadir}/licenses
 %endif

From f9127d44bc0b1f16102b2b479b8683feb3ef2acee2f290e4ca8d07f4afa7c63d Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Wed, 15 Feb 2017 00:12:35 +0000
Subject: [PATCH 08/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=72

---
 rust.spec | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/rust.spec b/rust.spec
index 5bc1db3..c8207bb 100644
--- a/rust.spec
+++ b/rust.spec
@@ -181,7 +181,7 @@ sed -e '/*\//q' src/libbacktrace/backtrace.h \
 %files
 %defattr(-,root,root,-)
 # The SLES-12 macros don't appear to take ownership of this directory?
-%if 0%{?sle_version} <= 120300
+%if (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120300)
 %dir %{_datadir}/licenses
 %endif
 %license COPYRIGHT LICENSE-APACHE LICENSE-MIT
@@ -215,7 +215,7 @@ sed -e '/*\//q' src/libbacktrace/backtrace.h \
 %files doc
 %defattr(-,root,root)
 # The SLES-12 macros don't appear to take ownership of this directory?
-%if 0%{?sle_version} <= 120300
+%if (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120300)
 %dir %{_datadir}/licenses
 %endif
 %license %{_docdir}/%{name}/html/FiraSans-LICENSE.txt

From 809d338045c0276aa6a9772b47eaca791e905bc97572de3ef273e7c21bbb3cfd Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Wed, 15 Feb 2017 02:15:50 +0000
Subject: [PATCH 09/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=73

---
 rust.spec | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/rust.spec b/rust.spec
index c8207bb..c3d90e9 100644
--- a/rust.spec
+++ b/rust.spec
@@ -76,7 +76,7 @@ BuildRequires:  rustc-bootstrap >= %{prev_version}
 %else
 # There are no successful builds for less than TW or Leap 42.2, so bootstrap
 # until such time that there is.
-%if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120300)
+%if %{with bootstrap} || (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120100)
 BuildRequires:  cargo-bootstrap
 BuildRequires:  rustc-bootstrap >= %{prev_version}
 %else
@@ -180,10 +180,6 @@ sed -e '/*\//q' src/libbacktrace/backtrace.h \
 
 %files
 %defattr(-,root,root,-)
-# The SLES-12 macros don't appear to take ownership of this directory?
-%if (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120300)
-%dir %{_datadir}/licenses
-%endif
 %license COPYRIGHT LICENSE-APACHE LICENSE-MIT
 %license src/libbacktrace/LICENSE-libbacktrace
 %license src/rt/hoedown/LICENSE-hoedown
@@ -214,10 +210,6 @@ sed -e '/*\//q' src/libbacktrace/backtrace.h \
 
 %files doc
 %defattr(-,root,root)
-# The SLES-12 macros don't appear to take ownership of this directory?
-%if (0%{?suse_version} < 1330 && 0%{?sle_version} <= 120300)
-%dir %{_datadir}/licenses
-%endif
 %license %{_docdir}/%{name}/html/FiraSans-LICENSE.txt
 %license %{_docdir}/%{name}/html/Heuristica-LICENSE.txt
 %license %{_docdir}/%{name}/html/LICENSE-APACHE.txt

From ee0923663d1e64e0f07ed4cb4556327598568da48a14561eda493085a1da70bf Mon Sep 17 00:00:00 2001
From: Luke Jones <luke@ljones.dev>
Date: Wed, 15 Feb 2017 05:59:34 +0000
Subject: [PATCH 10/10] OBS-URL:
 https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=74

---
 rust.changes | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/rust.changes b/rust.changes
index 0249db5..a937051 100644
--- a/rust.changes
+++ b/rust.changes
@@ -1,3 +1,8 @@
+-------------------------------------------------------------------
+Wed Feb 15 05:58:35 UTC 2017 - luke.nukem.jones@gmail.com
+
+- Fixes to build for archs armv7, aarch64, ppc64, s390x
+
 -------------------------------------------------------------------
 Sat Feb 11 05:31:34 UTC 2017 - luke.nukem.jones@gmail.com