diff --git a/syncthing-go-1.4-compat.patch b/syncthing-go-1.4-compat.patch deleted file mode 100644 index 6654eff..0000000 --- a/syncthing-go-1.4-compat.patch +++ /dev/null @@ -1,582 +0,0 @@ ---- a/vendor/github.com/minio/sha256-simd/cpuid_386.go -+++ b/vendor/github.com/minio/sha256-simd/cpuid_386.go -@@ -1,3 +1,5 @@ -+// +build 386 -+ - // Minio Cloud Storage, (C) 2016 Minio, Inc. - // - // Licensed under the Apache License, Version 2.0 (the "License"); ---- a/vendor/github.com/minio/sha256-simd/cpuid_amd64.go -+++ b/vendor/github.com/minio/sha256-simd/cpuid_amd64.go -@@ -1,3 +1,5 @@ -+// +build amd64 -+ - // Minio Cloud Storage, (C) 2016 Minio, Inc. - // - // Licensed under the Apache License, Version 2.0 (the "License"); ---- a/vendor/github.com/minio/sha256-simd/cpuid_arm.go -+++ b/vendor/github.com/minio/sha256-simd/cpuid_arm.go -@@ -1,3 +1,5 @@ -+// +build arm -+ - // Minio Cloud Storage, (C) 2016 Minio, Inc. - // - // Licensed under the Apache License, Version 2.0 (the "License"); ---- a/vendor/github.com/minio/sha256-simd/cpuid_noasm.go -+++ b/vendor/github.com/minio/sha256-simd/cpuid_noasm.go -@@ -0,0 +1,34 @@ -+// +build !386,!amd64,!arm,!arm64 noasm -+ -+// Minio Cloud Storage, (C) 2016 Minio, Inc. -+// -+// Licensed under the Apache License, Version 2.0 (the "License"); -+// you may not use this file except in compliance with the License. -+// You may obtain a copy of the License at -+// -+// http://www.apache.org/licenses/LICENSE-2.0 -+// -+// Unless required by applicable law or agreed to in writing, software -+// distributed under the License is distributed on an "AS IS" BASIS, -+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -+// See the License for the specific language governing permissions and -+// limitations under the License. -+// -+ -+package sha256 -+ -+func cpuid(op uint32) (eax, ebx, ecx, edx uint32) { -+ return 0, 0, 0, 0 -+} -+ -+func cpuidex(op, op2 uint32) (eax, ebx, ecx, edx uint32) { -+ return 0, 0, 0, 0 -+} -+ -+func xgetbv(index uint32) (eax, edx uint32) { -+ return 0, 0 -+} -+ -+func haveArmSha() bool { -+ return false -+} ---- a/vendor/github.com/minio/sha256-simd/cpuid_ppc64.go -+++ /dev/null -@@ -1,32 +0,0 @@ --// Minio Cloud Storage, (C) 2016 Minio, Inc. --// --// Licensed under the Apache License, Version 2.0 (the "License"); --// you may not use this file except in compliance with the License. --// You may obtain a copy of the License at --// --// http://www.apache.org/licenses/LICENSE-2.0 --// --// Unless required by applicable law or agreed to in writing, software --// distributed under the License is distributed on an "AS IS" BASIS, --// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --// See the License for the specific language governing permissions and --// limitations under the License. --// -- --package sha256 -- --func cpuid(op uint32) (eax, ebx, ecx, edx uint32) { -- return 0, 0, 0, 0 --} -- --func cpuidex(op, op2 uint32) (eax, ebx, ecx, edx uint32) { -- return 0, 0, 0, 0 --} -- --func xgetbv(index uint32) (eax, edx uint32) { -- return 0, 0 --} -- --func haveArmSha() bool { -- return false --} ---- a/vendor/github.com/minio/sha256-simd/cpuid_ppc64le.go -+++ /dev/null -@@ -1,32 +0,0 @@ --// Minio Cloud Storage, (C) 2016 Minio, Inc. --// --// Licensed under the Apache License, Version 2.0 (the "License"); --// you may not use this file except in compliance with the License. --// You may obtain a copy of the License at --// --// http://www.apache.org/licenses/LICENSE-2.0 --// --// Unless required by applicable law or agreed to in writing, software --// distributed under the License is distributed on an "AS IS" BASIS, --// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --// See the License for the specific language governing permissions and --// limitations under the License. --// -- --package sha256 -- --func cpuid(op uint32) (eax, ebx, ecx, edx uint32) { -- return 0, 0, 0, 0 --} -- --func cpuidex(op, op2 uint32) (eax, ebx, ecx, edx uint32) { -- return 0, 0, 0, 0 --} -- --func xgetbv(index uint32) (eax, edx uint32) { -- return 0, 0 --} -- --func haveArmSha() bool { -- return false --} ---- a/vendor/github.com/minio/sha256-simd/sha256block_386.go -+++ /dev/null -@@ -1,24 +0,0 @@ --//+build !noasm -- --/* -- * Minio Cloud Storage, (C) 2016 Minio, Inc. -- * -- * Licensed under the Apache License, Version 2.0 (the "License"); -- * you may not use this file except in compliance with the License. -- * You may obtain a copy of the License at -- * -- * http://www.apache.org/licenses/LICENSE-2.0 -- * -- * Unless required by applicable law or agreed to in writing, software -- * distributed under the License is distributed on an "AS IS" BASIS, -- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- * See the License for the specific language governing permissions and -- * limitations under the License. -- */ -- --package sha256 -- --func blockArmGo(dig *digest, p []byte) {} --func blockAvx2Go(dig *digest, p []byte) {} --func blockAvxGo(dig *digest, p []byte) {} --func blockSsseGo(dig *digest, p []byte) {} ---- a/vendor/github.com/minio/sha256-simd/sha256block_amd64.go -+++ b/vendor/github.com/minio/sha256-simd/sha256block_amd64.go -@@ -1,4 +1,4 @@ --//+build !noasm -+// +build amd64,!noasm,!gccgo,go1.5 - - /* - * Minio Cloud Storage, (C) 2016 Minio, Inc. ---- a/vendor/github.com/minio/sha256-simd/sha256block_arm64.go -+++ b/vendor/github.com/minio/sha256-simd/sha256block_arm64.go -@@ -1,4 +1,4 @@ --//+build !noasm -+// +build arm64,!noasm,!gccgo,go1.5 - - /* - * Minio Cloud Storage, (C) 2016 Minio, Inc. ---- a/vendor/github.com/minio/sha256-simd/sha256block_arm64.s -+++ b/vendor/github.com/minio/sha256-simd/sha256block_arm64.s -@@ -1,4 +1,4 @@ --//+build !noasm !appengine -+// +build !noasm,!gccgo,go1.5,!appengine - - // ARM64 version of SHA256 - ---- a/vendor/github.com/minio/sha256-simd/sha256block_arm.go -+++ /dev/null -@@ -1,24 +0,0 @@ --//+build !noasm -- --/* -- * Minio Cloud Storage, (C) 2016 Minio, Inc. -- * -- * Licensed under the Apache License, Version 2.0 (the "License"); -- * you may not use this file except in compliance with the License. -- * You may obtain a copy of the License at -- * -- * http://www.apache.org/licenses/LICENSE-2.0 -- * -- * Unless required by applicable law or agreed to in writing, software -- * distributed under the License is distributed on an "AS IS" BASIS, -- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- * See the License for the specific language governing permissions and -- * limitations under the License. -- */ -- --package sha256 -- --func blockAvx2Go(dig *digest, p []byte) {} --func blockAvxGo(dig *digest, p []byte) {} --func blockSsseGo(dig *digest, p []byte) {} --func blockArmGo(dig *digest, p []byte) {} ---- a/vendor/github.com/minio/sha256-simd/sha256blockAvx2_amd64.go -+++ b/vendor/github.com/minio/sha256-simd/sha256blockAvx2_amd64.go -@@ -1,4 +1,4 @@ --//+build !noasm -+// +build amd64,!noasm,!gccgo,go1.5 - - /* - * Minio Cloud Storage, (C) 2016 Minio, Inc. ---- a/vendor/github.com/minio/sha256-simd/sha256blockAvx2_amd64.s -+++ b/vendor/github.com/minio/sha256-simd/sha256blockAvx2_amd64.s -@@ -1,4 +1,4 @@ --//+build !noasm !appengine -+// +build !noasm,!gccgo,go1.5,!appengine - - // SHA256 implementation for AVX2 - ---- a/vendor/github.com/minio/sha256-simd/sha256blockAvx_amd64.go -+++ b/vendor/github.com/minio/sha256-simd/sha256blockAvx_amd64.go -@@ -1,4 +1,4 @@ --//+build !noasm -+// +build amd64,!noasm,!gccgo,go1.5 - - /* - * Minio Cloud Storage, (C) 2016 Minio, Inc. ---- a/vendor/github.com/minio/sha256-simd/sha256blockAvx_amd64.s -+++ b/vendor/github.com/minio/sha256-simd/sha256blockAvx_amd64.s -@@ -1,4 +1,4 @@ --//+build !noasm !appengine -+// +build !noasm,!gccgo,go1.5,!appengine - - // SHA256 implementation for AVX - ---- a/vendor/github.com/minio/sha256-simd/sha256block_generic.go -+++ b/vendor/github.com/minio/sha256-simd/sha256block_generic.go -@@ -0,0 +1,134 @@ -+/* -+ * Minio Cloud Storage, (C) 2016 Minio, Inc. -+ * -+ * Licensed under the Apache License, Version 2.0 (the "License"); -+ * you may not use this file except in compliance with the License. -+ * You may obtain a copy of the License at -+ * -+ * http://www.apache.org/licenses/LICENSE-2.0 -+ * -+ * Unless required by applicable law or agreed to in writing, software -+ * distributed under the License is distributed on an "AS IS" BASIS, -+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -+ * See the License for the specific language governing permissions and -+ * limitations under the License. -+ */ -+ -+package sha256 -+ -+func blockGeneric(dig *digest, p []byte) { -+ var w [64]uint32 -+ h0, h1, h2, h3, h4, h5, h6, h7 := dig.h[0], dig.h[1], dig.h[2], dig.h[3], dig.h[4], dig.h[5], dig.h[6], dig.h[7] -+ for len(p) >= chunk { -+ // Can interlace the computation of w with the -+ // rounds below if needed for speed. -+ for i := 0; i < 16; i++ { -+ j := i * 4 -+ w[i] = uint32(p[j])<<24 | uint32(p[j+1])<<16 | uint32(p[j+2])<<8 | uint32(p[j+3]) -+ } -+ for i := 16; i < 64; i++ { -+ v1 := w[i-2] -+ t1 := (v1>>17 | v1<<(32-17)) ^ (v1>>19 | v1<<(32-19)) ^ (v1 >> 10) -+ v2 := w[i-15] -+ t2 := (v2>>7 | v2<<(32-7)) ^ (v2>>18 | v2<<(32-18)) ^ (v2 >> 3) -+ w[i] = t1 + w[i-7] + t2 + w[i-16] -+ } -+ -+ a, b, c, d, e, f, g, h := h0, h1, h2, h3, h4, h5, h6, h7 -+ -+ for i := 0; i < 64; i++ { -+ t1 := h + ((e>>6 | e<<(32-6)) ^ (e>>11 | e<<(32-11)) ^ (e>>25 | e<<(32-25))) + ((e & f) ^ (^e & g)) + _K[i] + w[i] -+ -+ t2 := ((a>>2 | a<<(32-2)) ^ (a>>13 | a<<(32-13)) ^ (a>>22 | a<<(32-22))) + ((a & b) ^ (a & c) ^ (b & c)) -+ -+ h = g -+ g = f -+ f = e -+ e = d + t1 -+ d = c -+ c = b -+ b = a -+ a = t1 + t2 -+ } -+ -+ h0 += a -+ h1 += b -+ h2 += c -+ h3 += d -+ h4 += e -+ h5 += f -+ h6 += g -+ h7 += h -+ -+ p = p[chunk:] -+ } -+ -+ dig.h[0], dig.h[1], dig.h[2], dig.h[3], dig.h[4], dig.h[5], dig.h[6], dig.h[7] = h0, h1, h2, h3, h4, h5, h6, h7 -+} -+ -+var _K = []uint32{ -+ 0x428a2f98, -+ 0x71374491, -+ 0xb5c0fbcf, -+ 0xe9b5dba5, -+ 0x3956c25b, -+ 0x59f111f1, -+ 0x923f82a4, -+ 0xab1c5ed5, -+ 0xd807aa98, -+ 0x12835b01, -+ 0x243185be, -+ 0x550c7dc3, -+ 0x72be5d74, -+ 0x80deb1fe, -+ 0x9bdc06a7, -+ 0xc19bf174, -+ 0xe49b69c1, -+ 0xefbe4786, -+ 0x0fc19dc6, -+ 0x240ca1cc, -+ 0x2de92c6f, -+ 0x4a7484aa, -+ 0x5cb0a9dc, -+ 0x76f988da, -+ 0x983e5152, -+ 0xa831c66d, -+ 0xb00327c8, -+ 0xbf597fc7, -+ 0xc6e00bf3, -+ 0xd5a79147, -+ 0x06ca6351, -+ 0x14292967, -+ 0x27b70a85, -+ 0x2e1b2138, -+ 0x4d2c6dfc, -+ 0x53380d13, -+ 0x650a7354, -+ 0x766a0abb, -+ 0x81c2c92e, -+ 0x92722c85, -+ 0xa2bfe8a1, -+ 0xa81a664b, -+ 0xc24b8b70, -+ 0xc76c51a3, -+ 0xd192e819, -+ 0xd6990624, -+ 0xf40e3585, -+ 0x106aa070, -+ 0x19a4c116, -+ 0x1e376c08, -+ 0x2748774c, -+ 0x34b0bcb5, -+ 0x391c0cb3, -+ 0x4ed8aa4a, -+ 0x5b9cca4f, -+ 0x682e6ff3, -+ 0x748f82ee, -+ 0x78a5636f, -+ 0x84c87814, -+ 0x8cc70208, -+ 0x90befffa, -+ 0xa4506ceb, -+ 0xbef9a3f7, -+ 0xc67178f2, -+} ---- a/vendor/github.com/minio/sha256-simd/sha256block_noasm.go -+++ b/vendor/github.com/minio/sha256-simd/sha256block_noasm.go -@@ -1,4 +1,4 @@ --//+build !arm64 !amd64 noasm appengine -+// +build !amd64,!arm64 noasm gccgo !go1.5 appengine - - /* - * Minio Cloud Storage, (C) 2016 Minio, Inc. -@@ -18,119 +18,15 @@ - - package sha256 - --func blockGeneric(dig *digest, p []byte) { -- var w [64]uint32 -- h0, h1, h2, h3, h4, h5, h6, h7 := dig.h[0], dig.h[1], dig.h[2], dig.h[3], dig.h[4], dig.h[5], dig.h[6], dig.h[7] -- for len(p) >= chunk { -- // Can interlace the computation of w with the -- // rounds below if needed for speed. -- for i := 0; i < 16; i++ { -- j := i * 4 -- w[i] = uint32(p[j])<<24 | uint32(p[j+1])<<16 | uint32(p[j+2])<<8 | uint32(p[j+3]) -- } -- for i := 16; i < 64; i++ { -- v1 := w[i-2] -- t1 := (v1>>17 | v1<<(32-17)) ^ (v1>>19 | v1<<(32-19)) ^ (v1 >> 10) -- v2 := w[i-15] -- t2 := (v2>>7 | v2<<(32-7)) ^ (v2>>18 | v2<<(32-18)) ^ (v2 >> 3) -- w[i] = t1 + w[i-7] + t2 + w[i-16] -- } -- -- a, b, c, d, e, f, g, h := h0, h1, h2, h3, h4, h5, h6, h7 -- -- for i := 0; i < 64; i++ { -- t1 := h + ((e>>6 | e<<(32-6)) ^ (e>>11 | e<<(32-11)) ^ (e>>25 | e<<(32-25))) + ((e & f) ^ (^e & g)) + _K[i] + w[i] -- -- t2 := ((a>>2 | a<<(32-2)) ^ (a>>13 | a<<(32-13)) ^ (a>>22 | a<<(32-22))) + ((a & b) ^ (a & c) ^ (b & c)) -- -- h = g -- g = f -- f = e -- e = d + t1 -- d = c -- c = b -- b = a -- a = t1 + t2 -- } -- -- h0 += a -- h1 += b -- h2 += c -- h3 += d -- h4 += e -- h5 += f -- h6 += g -- h7 += h -- -- p = p[chunk:] -- } -- -- dig.h[0], dig.h[1], dig.h[2], dig.h[3], dig.h[4], dig.h[5], dig.h[6], dig.h[7] = h0, h1, h2, h3, h4, h5, h6, h7 -+func blockAvx2Go(dig *digest, p []byte) { -+ blockGeneric(dig, p) - } -- --var _K = []uint32{ -- 0x428a2f98, -- 0x71374491, -- 0xb5c0fbcf, -- 0xe9b5dba5, -- 0x3956c25b, -- 0x59f111f1, -- 0x923f82a4, -- 0xab1c5ed5, -- 0xd807aa98, -- 0x12835b01, -- 0x243185be, -- 0x550c7dc3, -- 0x72be5d74, -- 0x80deb1fe, -- 0x9bdc06a7, -- 0xc19bf174, -- 0xe49b69c1, -- 0xefbe4786, -- 0x0fc19dc6, -- 0x240ca1cc, -- 0x2de92c6f, -- 0x4a7484aa, -- 0x5cb0a9dc, -- 0x76f988da, -- 0x983e5152, -- 0xa831c66d, -- 0xb00327c8, -- 0xbf597fc7, -- 0xc6e00bf3, -- 0xd5a79147, -- 0x06ca6351, -- 0x14292967, -- 0x27b70a85, -- 0x2e1b2138, -- 0x4d2c6dfc, -- 0x53380d13, -- 0x650a7354, -- 0x766a0abb, -- 0x81c2c92e, -- 0x92722c85, -- 0xa2bfe8a1, -- 0xa81a664b, -- 0xc24b8b70, -- 0xc76c51a3, -- 0xd192e819, -- 0xd6990624, -- 0xf40e3585, -- 0x106aa070, -- 0x19a4c116, -- 0x1e376c08, -- 0x2748774c, -- 0x34b0bcb5, -- 0x391c0cb3, -- 0x4ed8aa4a, -- 0x5b9cca4f, -- 0x682e6ff3, -- 0x748f82ee, -- 0x78a5636f, -- 0x84c87814, -- 0x8cc70208, -- 0x90befffa, -- 0xa4506ceb, -- 0xbef9a3f7, -- 0xc67178f2, -+func blockAvxGo(dig *digest, p []byte) { -+ blockGeneric(dig, p) -+} -+func blockSsseGo(dig *digest, p []byte) { -+ blockGeneric(dig, p) -+} -+func blockArmGo(dig *digest, p []byte) { -+ blockGeneric(dig, p) - } ---- a/vendor/github.com/minio/sha256-simd/sha256block_ppc64.go -+++ /dev/null -@@ -1,22 +0,0 @@ --/* -- * Minio Cloud Storage, (C) 2016 Minio, Inc. -- * -- * Licensed under the Apache License, Version 2.0 (the "License"); -- * you may not use this file except in compliance with the License. -- * You may obtain a copy of the License at -- * -- * http://www.apache.org/licenses/LICENSE-2.0 -- * -- * Unless required by applicable law or agreed to in writing, software -- * distributed under the License is distributed on an "AS IS" BASIS, -- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- * See the License for the specific language governing permissions and -- * limitations under the License. -- */ -- --package sha256 -- --func blockAvx2Go(dig *digest, p []byte) {} --func blockAvxGo(dig *digest, p []byte) {} --func blockSsseGo(dig *digest, p []byte) {} --func blockArmGo(dig *digest, p []byte) {} ---- a/vendor/github.com/minio/sha256-simd/sha256block_ppc64le.go -+++ /dev/null -@@ -1,22 +0,0 @@ --/* -- * Minio Cloud Storage, (C) 2016 Minio, Inc. -- * -- * Licensed under the Apache License, Version 2.0 (the "License"); -- * you may not use this file except in compliance with the License. -- * You may obtain a copy of the License at -- * -- * http://www.apache.org/licenses/LICENSE-2.0 -- * -- * Unless required by applicable law or agreed to in writing, software -- * distributed under the License is distributed on an "AS IS" BASIS, -- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- * See the License for the specific language governing permissions and -- * limitations under the License. -- */ -- --package sha256 -- --func blockAvx2Go(dig *digest, p []byte) {} --func blockAvxGo(dig *digest, p []byte) {} --func blockSsseGo(dig *digest, p []byte) {} --func blockArmGo(dig *digest, p []byte) {} ---- a/vendor/github.com/minio/sha256-simd/sha256blockSsse_amd64.go -+++ b/vendor/github.com/minio/sha256-simd/sha256blockSsse_amd64.go -@@ -1,4 +1,4 @@ --//+build !noasm -+//+build amd64,!noasm,!gccgo,go1.5 - - /* - * Minio Cloud Storage, (C) 2016 Minio, Inc. ---- a/vendor/github.com/minio/sha256-simd/sha256blockSsse_amd64.s -+++ b/vendor/github.com/minio/sha256-simd/sha256blockSsse_amd64.s -@@ -1,4 +1,4 @@ --//+build !noasm !appengine -+//+build !noasm,!gccgo,go1.5,!appengine - - // SHA256 implementation for SSSE3 - diff --git a/syncthing.changes b/syncthing.changes index 339d7f5..9abc1f3 100644 --- a/syncthing.changes +++ b/syncthing.changes @@ -22,8 +22,7 @@ Tue Dec 27 15:05:20 UTC 2016 - sor.alexei@meowr.ru (gh#syncthing/syncthing#3790). * Which device introduced another device is now visible in the GUI (gh#syncthing/syncthing#3809). -- Rebase and improve syncthing-go-1.4-compat.patch: wasn't working - good enough with Go 1.4. +- Remove syncthing-go-1.4-compat.patch: becoming impossible to fix. ------------------------------------------------------------------- Fri Dec 23 10:36:02 UTC 2016 - sor.alexei@meowr.ru diff --git a/syncthing.spec b/syncthing.spec index 31d7696..68f372b 100644 --- a/syncthing.spec +++ b/syncthing.spec @@ -27,9 +27,7 @@ Source: https://github.com/%{name}/%{name}/releases/download/v%{version} Source1: https://github.com/%{name}/%{name}/releases/download/v%{version}/%{name}-source-v%{version}.tar.gz.asc Source2: %{name}.keyring Source3: %{name}.firewall -# PATCH-FIX-OPENSUSE syncthing-go-1.4-compat.patch -- Fix Go 1.4 compatibility. -Patch0: %{name}-go-1.4-compat.patch -BuildRequires: go >= 1.4 +BuildRequires: go >= 1.5 BuildRequires: systemd BuildRequires: systemd-rpm-macros @@ -42,7 +40,6 @@ Internet. %prep %setup -q -n %{name} -%patch0 -p1 cp -f %{SOURCE3} %{name}.firewall %if !(0%{?suse_version} > 1320 || 0%{?sle_version} >= 120200)