summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Hansen2017-09-12 09:45:57 -0700
committerMichael Hansen2017-09-12 09:45:57 -0700
commit0c0031a77bab2053e81f9740d57cdccde0b20ae5 (patch)
tree606dc2dbce4620791fa476c91f199f8feec9a11d
parent890bbaf218c5dc921b6e62318db693d4f2707eb0 (diff)
downloadaur-0c0031a77bab2053e81f9740d57cdccde0b20ae5.tar.gz
Add fixes for glibc-2.26
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD7
-rw-r--r--glibc-2.26.patch60
3 files changed, 69 insertions, 2 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 640afbe48633..19169549dbee 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,5 +1,5 @@
# Generated by mksrcinfo v8
-# Wed Jul 19 23:13:10 UTC 2017
+# Tue Sep 12 16:45:21 UTC 2017
pkgbase = swift-language
pkgdesc = The Swift programming language and debugger
pkgver = 3.1.1
@@ -42,6 +42,7 @@ pkgbase = swift-language
source = icu59.patch
source = sphinx1.6.patch
source = lldb_missing_include.patch
+ source = glibc-2.26.patch
sha256sums = 03eb54e7f89109a85c9b2a9bfdee88d2d7e1bdef73ae0385b30fe4661efaf407
sha256sums = fc6ac7c0c6afff344a8d4e5299b7417f414f1499cf374953e06c339d8177fc26
sha256sums = ed41f1231bae030a412455491a5244ede53a4761617194b2dda573f5776361ad
@@ -57,6 +58,7 @@ pkgbase = swift-language
sha256sums = 3fedb626b375f6ad8b4601abd336f4560718a9c9134716f0c3a4e823b8c12857
sha256sums = 3c06dcc15bef6cbda7ce7b8a6a4f89bd16599ddbd1b964add9f2048cdda4700b
sha256sums = be61c69ae7bb626f7f07f95cb5c0074013725c1b90a3ca68aa0c0f989d75e41e
+ sha256sums = f3eca044354ee371072aaf81452468cce1ff2abf9efc746db964dfdb400f88ab
pkgname = swift
pkgdesc = The Swift programming language compiler and tools
diff --git a/PKGBUILD b/PKGBUILD
index 3f40d938aa9e..00c939f97016 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -30,6 +30,7 @@ source=(
"icu59.patch"
"sphinx1.6.patch"
"lldb_missing_include.patch"
+ "glibc-2.26.patch"
)
sha256sums=('03eb54e7f89109a85c9b2a9bfdee88d2d7e1bdef73ae0385b30fe4661efaf407'
'fc6ac7c0c6afff344a8d4e5299b7417f414f1499cf374953e06c339d8177fc26'
@@ -45,7 +46,8 @@ sha256sums=('03eb54e7f89109a85c9b2a9bfdee88d2d7e1bdef73ae0385b30fe4661efaf407'
'c9aa6e167a57ed31002471204d39bf24bb4ebecc38322571515ac73f02b237b6'
'3fedb626b375f6ad8b4601abd336f4560718a9c9134716f0c3a4e823b8c12857'
'3c06dcc15bef6cbda7ce7b8a6a4f89bd16599ddbd1b964add9f2048cdda4700b'
- 'be61c69ae7bb626f7f07f95cb5c0074013725c1b90a3ca68aa0c0f989d75e41e')
+ 'be61c69ae7bb626f7f07f95cb5c0074013725c1b90a3ca68aa0c0f989d75e41e'
+ 'f3eca044354ee371072aaf81452468cce1ff2abf9efc746db964dfdb400f88ab')
prepare() {
# Use python2 where appropriate
@@ -84,6 +86,9 @@ prepare() {
# LLDB is missing an include for std::bind with libstdc++/gcc7
( cd "${srcdir}/lldb" && patch -p1 -i "${srcdir}/lldb_missing_include.patch" )
+
+ # glibc 2.26 removed the non-standard xlocale.h and SIGUNUSED
+ ( cd "${srcdir}" && patch -p1 -i "${srcdir}/glibc-2.26.patch" )
}
_common_build_params=(
diff --git a/glibc-2.26.patch b/glibc-2.26.patch
new file mode 100644
index 000000000000..1c24f04bca95
--- /dev/null
+++ b/glibc-2.26.patch
@@ -0,0 +1,60 @@
+diff -rupN a/llbuild/lib/BuildSystem/LaneBasedExecutionQueue.cpp b/llbuild/lib/BuildSystem/LaneBasedExecutionQueue.cpp
+--- a/llbuild/lib/BuildSystem/LaneBasedExecutionQueue.cpp 2017-09-12 08:26:14.320282043 -0700
++++ b/llbuild/lib/BuildSystem/LaneBasedExecutionQueue.cpp 2017-09-12 08:25:50.040024445 -0700
+@@ -231,7 +231,7 @@ public:
+ #if defined(__linux__)
+ sigset_t mostSignals;
+ sigemptyset(&mostSignals);
+- for (int i = 1; i < SIGUNUSED; ++i) {
++ for (int i = 1; i < SIGSYS; ++i) {
+ if (i == SIGKILL || i == SIGSTOP) continue;
+ sigaddset(&mostSignals, i);
+ }
+diff -rupN a/llbuild/lib/Commands/NinjaBuildCommand.cpp b/llbuild/lib/Commands/NinjaBuildCommand.cpp
+--- a/llbuild/lib/Commands/NinjaBuildCommand.cpp 2017-09-12 08:26:14.320282043 -0700
++++ b/llbuild/lib/Commands/NinjaBuildCommand.cpp 2017-09-12 08:25:50.040024445 -0700
+@@ -1164,7 +1164,7 @@ buildCommand(BuildContext& context, ninj
+ #if defined(__linux__)
+ sigset_t mostSignals;
+ sigemptyset(&mostSignals);
+- for (int i = 1; i < SIGUNUSED; ++i) {
++ for (int i = 1; i < SIGSYS; ++i) {
+ if (i == SIGKILL || i == SIGSTOP) continue;
+ sigaddset(&mostSignals, i);
+ }
+diff -rupN a/swift/stdlib/public/stubs/Stubs.cpp b/swift/stdlib/public/stubs/Stubs.cpp
+--- a/swift/stdlib/public/stubs/Stubs.cpp 2017-09-12 08:26:27.680423806 -0700
++++ b/swift/stdlib/public/stubs/Stubs.cpp 2017-09-12 08:25:49.870022642 -0700
+@@ -61,7 +61,7 @@ static long double swift_strtold_l(const
+ #define strtof_l swift_strtof_l
+ #define strtold_l swift_strtold_l
+ #else
+-#include <xlocale.h>
++#include <locale.h>
+ #endif
+ #include <limits>
+ #include "llvm/ADT/StringExtras.h"
+diff -rupN a/swift-corelibs-foundation/CoreFoundation/Base.subproj/CFInternal.h b/swift-corelibs-foundation/CoreFoundation/Base.subproj/CFInternal.h
+--- a/swift-corelibs-foundation/CoreFoundation/Base.subproj/CFInternal.h 2017-09-12 08:25:03.549531343 -0700
++++ b/swift-corelibs-foundation/CoreFoundation/Base.subproj/CFInternal.h 2017-09-12 08:27:17.330950766 -0700
+@@ -95,7 +95,7 @@ CF_EXTERN_C_BEGIN
+ #if DEPLOYMENT_TARGET_MACOSX || DEPLOYMENT_TARGET_EMBEDDED || DEPLOYMENT_TARGET_EMBEDDED_MINI || DEPLOYMENT_TARGET_LINUX || DEPLOYMENT_TARGET_FREEBSD
+ #if TARGET_OS_CYGWIN
+ #else
+-#include <xlocale.h>
++#include <locale.h>
+ #endif
+ #include <unistd.h>
+ #include <sys/time.h>
+diff -rupN a/swiftpm/Sources/Utility/Process.swift b/swiftpm/Sources/Utility/Process.swift
+--- a/swiftpm/Sources/Utility/Process.swift 2017-09-12 09:03:10.154395376 -0700
++++ b/swiftpm/Sources/Utility/Process.swift 2017-09-12 09:03:36.114680619 -0700
+@@ -140,7 +140,7 @@ public final class Process: ObjectIdenti
+ // modify, so we have to take care about the set we use.
+ var mostSignals = sigset_t()
+ sigemptyset(&mostSignals);
+- for i in 1 ..< SIGUNUSED {
++ for i in 1 ..< SIGSYS {
+ if i == SIGKILL || i == SIGSTOP {
+ continue
+ }