The package rpms/swift-lang.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/swift-lang.git/commit/?id=68c4452....
Change:
+%ifarch s390x
Thanks.
Full change:
============
commit c12fd33d2e213bfc74f3644ee6606dc2ba87dec9
Author: Ron Olson <tachoknight(a)gmail.com>
Date: Sun Apr 12 11:50:41 2020 -0500
Updated version number
diff --git a/swift-lang.spec b/swift-lang.spec
index 04269bc..cfbd7f9 100644
--- a/swift-lang.spec
+++ b/swift-lang.spec
@@ -9,7 +9,7 @@
Name: swift-lang
Version: 5.2.1
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Apple's Swift programming language
License: ASL 2.0 and Unicode
URL:
https://swift.org
@@ -186,6 +186,8 @@ cp %{_builddir}/usr/share/man/man1/swift.1
%{buildroot}%{_mandir}/man1/swift.1
%changelog
+* Sun Apr 12 2020 Ron Olson <tachoknight(a)gmail.com> 5.2.1-2
+- Added s390x architecture and F30-specific requires
* Mon Apr 06 2020 Ron Olson <tachoknight(a)gmail.com> 5.2.1-1
- Reorganized the package to place everything in a single location,
changed the versioning scheme, and removed a number of obsolete patches
commit 68c44522383e731af9e3e84379fd938f7ae1a6ac
Author: Ron Olson <tachoknight(a)gmail.com>
Date: Sun Apr 12 11:39:56 2020 -0500
Updated to include s390x and specific requirement for F30
diff --git a/build-setup-s390x.patch b/build-setup-s390x.patch
new file mode 100644
index 0000000..83a723b
--- /dev/null
+++ b/build-setup-s390x.patch
@@ -0,0 +1,32 @@
+--- swift/utils/build-presets.ini.orig 2020-04-11 22:32:29.178121900 +0000
++++ swift/utils/build-presets.ini 2020-04-11 22:33:41.148121900 +0000
+@@ -736,18 +736,15 @@
+ llbuild
+ swiftpm
+ xctest
+-libicu
+ libcxx
+
+ dash-dash
+
+-build-ninja
+ install-swift
+ install-lldb
+ install-llbuild
+ install-swiftpm
+ install-xctest
+-install-libicu
+ install-prefix=/usr
+ install-libcxx
+ install-sourcekit-lsp
+@@ -758,10 +755,8 @@
+ # Executes the lit tests for the installable package that is created
+ # Assumes the swift-integration-tests repo is checked out
+
+-test-installable-package
+
+ # Build the benchmarks against the toolchain.
+-toolchain-benchmarks
+
+ # Path to the root of the installation filesystem.
+ install-destdir=%(install_destdir)s
diff --git a/ibm-identifier.patch b/ibm-identifier.patch
new file mode 100644
index 0000000..8ed81c3
--- /dev/null
+++ b/ibm-identifier.patch
@@ -0,0 +1,11 @@
+--- swiftpm/Sources/Build/Triple.swift.orig 2020-04-11 19:16:00.451437120 +0000
++++ swiftpm/Sources/Build/Triple.swift 2020-04-11 19:17:33.091437120 +0000
+@@ -135,7 +135,7 @@
+ public static let x86_64Linux = try! Triple("x86_64-unknown-linux-gnu")
+ public static let i686Linux = try! Triple("i686-unknown-linux")
+ public static let ppc64leLinux = try! Triple("powerpc64le-unknown-linux")
+- public static let s390xLinux = try! Triple("s390x-unknown-linux")
++ public static let s390xLinux = try! Triple("s390x-ibm-linux")
+ public static let arm64Linux = try! Triple("aarch64-unknown-linux-gnu")
+ public static let armLinux = try! Triple("armv7-unknown-linux-gnueabihf")
+ public static let armAndroid = try!
Triple("armv7a-unknown-linux-androideabi")
diff --git a/sources b/sources
index 3291aa9..768a7ce 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,3 @@
-SHA512 (cmake-3.16.5.tar.gz) =
204ce83501c8068ff660c30a68641a354764135e1600a9a95b39476d072876e400961377e19bbe03a7b18412b36dcf21a693946a2a81cff5985e637e9f193671
SHA512 (cmark.tar.gz) =
c1c31dadebb7e97ffbcf451e2964ab8593ab9048713b4aa102b87720a3f72b2b2bc7eedf4988cd7194dff930bfb27a0a3b34b4f5fd81e2d5d6f6cbd727d43282
SHA512 (corelibs-foundation.tar.gz) =
fca965045dcdb68c3038ddfab658cf2c26d84bcda8d29607538e583854858cf8b42c1bf55c2ca5d1d242c29666e23b0dba1f92da219b468112740681f26f0298
SHA512 (corelibs-libdispatch.tar.gz) =
6180ee085e667e4990c1b93ec506eb623c871f95e3eca38e5545c84ff258a22f2deaa9b86e640ba668ad5a0f56e36ec06b06ea5f23f060b6c25b6e0fd929a03d
diff --git a/swift-lang.spec b/swift-lang.spec
index aad418a..04269bc 100644
--- a/swift-lang.spec
+++ b/swift-lang.spec
@@ -5,40 +5,41 @@
%global swiftgithash 2e3b1b3
%global swiftgitdate 20200331
%global swiftbuild swift-source
-%global cmake_version 3.16.5
-Name: swift-lang
-Version: 5.2.1
-Release: 1%{?dist}
-Summary: Apple's Swift programming language
-License: ASL 2.0 and Unicode
-URL:
https://swift.org
-Source0:
https://github.com/apple/swift/archive/swift-%{swifttag}.tar.gz#/swift.ta...
-Source1:
https://github.com/apple/swift-corelibs-libdispatch/archive/swift-%{swift...
-Source2:
https://github.com/apple/swift-corelibs-foundation/archive/swift-%{swiftt...
-Source3:
https://github.com/apple/swift-integration-tests/archive/swift-%{swifttag...
-Source4:
https://github.com/apple/swift-corelibs-xctest/archive/swift-%{swifttag}....
-Source5:
https://github.com/apple/swift-package-manager/archive/swift-%{swifttag}....
-Source6:
https://github.com/apple/swift-llbuild/archive/swift-%{swifttag}.tar.gz#/...
-Source7:
https://github.com/apple/swift-cmark/archive/swift-%{swifttag}.tar.gz#/cm...
-Source8:
https://github.com/apple/swift-xcode-playground-support/archive/swift-%{s...
+Name: swift-lang
+Version: 5.2.1
+Release: 1%{?dist}
+Summary: Apple's Swift programming language
+License: ASL 2.0 and Unicode
+URL:
https://swift.org
+Source0:
https://github.com/apple/swift/archive/swift-%{swifttag}.tar.gz#/swift.ta...
+Source1:
https://github.com/apple/swift-corelibs-libdispatch/archive/swift-%{swift...
+Source2:
https://github.com/apple/swift-corelibs-foundation/archive/swift-%{swiftt...
+Source3:
https://github.com/apple/swift-integration-tests/archive/swift-%{swifttag...
+Source4:
https://github.com/apple/swift-corelibs-xctest/archive/swift-%{swifttag}....
+Source5:
https://github.com/apple/swift-package-manager/archive/swift-%{swifttag}....
+Source6:
https://github.com/apple/swift-llbuild/archive/swift-%{swifttag}.tar.gz#/...
+Source7:
https://github.com/apple/swift-cmark/archive/swift-%{swifttag}.tar.gz#/cm...
+Source8:
https://github.com/apple/swift-xcode-playground-support/archive/swift-%{s...
Source9:
https://github.com/apple/sourcekit-lsp/archive/swift-%{swifttag}.tar.gz#/...
Source10:
https://github.com/apple/indexstore-db/archive/swift-%{swifttag}.tar.gz#/...
Source11:
https://github.com/apple/llvm-project/archive/swift-%{swifttag}.tar.gz#/l...
Source12:
https://github.com/unicode-org/icu/archive/release-61-2.tar.gz
Source13:
https://github.com/apple/swift-syntax/archive/swift-%{swiftsyntax}.zip#/s...
-Source16:
https://github.com/Kitware/CMake/releases/download/v%{cmake_version}/cmak...
Patch0: build-setup.patch
Patch1: compiler-rt-fuzzer.patch
Patch2: python3-2.patch
Patch3: linux-tests-python-3-2.patch
-Patch4: glibcpthread.patch
-Patch5: swift.patch
-Patch6: llvm.patch
-Patch7: indexstore.patch
+Patch4: glibcpthread.patch
+Patch5: swift.patch
+Patch6: llvm.patch
+Patch7: indexstore.patch
+Patch8: build-setup-s390x.patch
+Patch9: ibm-identifier.patch
+BuildRequires: cmake
BuildRequires: clang
BuildRequires: swig
BuildRequires: pkgconfig
@@ -57,21 +58,23 @@ BuildRequires: libuuid-devel
BuildRequires: libedit-devel
BuildRequires: libicu-devel
BuildRequires: ninja-build
-BuildRequires: make
-BuildRequires: openssl-devel
BuildRequires: /usr/bin/pathfix.py
-Requires: glibc-devel
+Requires: glibc-devel
+%if 0%{?fedora} >= 31
Requires: binutils-gold
+%else
+Requires: binutils
+%endif
Requires: gcc
Requires: ncurses-devel
Requires: ncurses-compat-libs
-Provides: %{name} = %{version}-%{release}
-Obsoletes: %{name} < %{version}-%{release}
-Obsoletes: %{name}-runtime < %{version}-%{release}
+Provides: %{name} = %{version}-%{release}
+Obsoletes: %{name} < %{version}-%{release}
+Obsoletes: %{name}-runtime < %{version}-%{release}
-ExclusiveArch: x86_64 aarch64
+ExclusiveArch: x86_64 aarch64 s390x
%description
@@ -88,13 +91,6 @@ correct programs easier for the developer.
%prep
-# Now we handle our own CMake (sigh)
-%setup -q -c -n cmake -a 16
-mkdir cmake-build
-cd cmake-build
-../cmake-%{cmake_version}/bootstrap && make
-
-
%setup -q -c -n %{swiftbuild} -a 0 -a 1 -a 2 -a 3 -a 4 -a 5 -a 6 -a 7 -a 8 -a 9 -a 10 -a
11 -a 12 -a 13
# The Swift build script requires directories to be named
# in a specific way so renaming the source directories is
@@ -119,7 +115,12 @@ mv icu-release-61-2 icu
mv swift-syntax-swift-%{swiftsyntax} swift-syntax
# Since we require ninja for building, there's no sense to rebuild it just for Swift
+%ifnarch s390x
%patch0 -p0
+%else
+# Couple other things for s390x
+%patch8 -p0
+%endif
# Fixes an issue with using std::thread in a vector in compiler-rt
%patch1 -p0
@@ -140,6 +141,11 @@ mv swift-syntax-swift-%{swiftsyntax} swift-syntax
%patch6 -p0
%patch7 -p0
+# s390x-specific patches
+%ifarch s390x
+%patch9 -p0
+%endif
+
# Fix python to python3
pathfix.py -pni "%{__python3} %{py3_shbang_opts}"
swift/utils/api_checker/swift-api-checker.py
@@ -150,8 +156,6 @@ export VERBOSE=1
mkdir $PWD/binforpython
ln -s /usr/bin/python3 $PWD/binforpython/python
export PATH=$PWD/binforpython:$PATH
-# And for CMake, which we built first
-export PATH=$PWD/../cmake/cmake-build/bin:$PATH
# Here we go!
swift/utils/build-script --preset=buildbot_linux,no_test install_destdir=%{_builddir}
installable_package=%{_builddir}/swift-%{version}-fedora.tar.gz