From c21258489fea3a5e12fc20534f51b031e0b8cfba Mon Sep 17 00:00:00 2001 From: Ron Olson Date: Thu, 19 Dec 2024 08:24:49 -0600 Subject: [PATCH] 5.8.1 for EPEL-10 as a step to bringing it up to parity with other branches --- cython_updates.patch | 32 +++++ debug_build.patch | 11 ++ disable_warning.patch | 39 ++++++ enable_lzma.patch | 11 -- enablelzma.patch | 11 ++ fclose_issues.patch | 40 +++++++ fs.patch | 15 +++ have_strcat.patch | 18 --- latest_python.patch | 16 +-- need_pic.patch | 11 -- new_glibc.patch | 27 +++++ no-test.patch | 11 ++ no_pipes.patch | 83 ------------- no_pipes_58.patch | 270 +++++++++++++++++++++++++++++++++++++++++ resource_dir.patch | 46 ------- sources | 73 +++++------- swift-lang.spec | 272 +++++++++++++++++++++--------------------- swiftlang.conf | 1 - uintptr.patch | 10 ++ unusedvars.patch | 14 +++ 20 files changed, 656 insertions(+), 355 deletions(-) create mode 100644 cython_updates.patch create mode 100644 debug_build.patch create mode 100644 disable_warning.patch delete mode 100644 enable_lzma.patch create mode 100644 enablelzma.patch create mode 100644 fclose_issues.patch create mode 100644 fs.patch delete mode 100644 have_strcat.patch delete mode 100644 need_pic.patch create mode 100644 new_glibc.patch create mode 100644 no-test.patch delete mode 100644 no_pipes.patch create mode 100644 no_pipes_58.patch delete mode 100644 resource_dir.patch delete mode 100644 swiftlang.conf create mode 100644 uintptr.patch create mode 100644 unusedvars.patch diff --git a/cython_updates.patch b/cython_updates.patch new file mode 100644 index 0000000..e3dc9c4 --- /dev/null +++ b/cython_updates.patch @@ -0,0 +1,32 @@ +diff --color -Naur llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp +--- llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp 2024-06-21 17:13:30.216450095 -0500 ++++ llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp 2024-06-21 17:17:12.418191122 -0500 +@@ -76,7 +76,7 @@ + #elif PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 7 + return _Py_Finalizing != nullptr; + #else +- return _Py_IsFinalizing(); ++ return Py_IsFinalizing(); + #endif + } + +diff --color -Naur llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp +--- llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp 2024-06-21 17:13:30.217450161 -0500 ++++ llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp 2024-06-21 17:18:29.299291469 -0500 +@@ -201,16 +201,6 @@ + return; + #endif + +- if (PyEval_ThreadsInitialized()) { +- Log *log = GetLog(LLDBLog::Script); +- +- m_was_already_initialized = true; +- m_gil_state = PyGILState_Ensure(); +- LLDB_LOGV(log, "Ensured PyGILState. Previous state = {0}locked\n", +- m_gil_state == PyGILState_UNLOCKED ? "un" : ""); +- return; +- } +- + // InitThreads acquires the GIL if it hasn't been called before. + PyEval_InitThreads(); + } diff --git a/debug_build.patch b/debug_build.patch new file mode 100644 index 0000000..fab8482 --- /dev/null +++ b/debug_build.patch @@ -0,0 +1,11 @@ +--- swift/utils/build-presets.ini.orig 2024-12-18 16:04:59.478543323 -0600 ++++ swift/utils/build-presets.ini 2024-12-18 16:07:08.704085878 -0600 +@@ -857,7 +857,7 @@ + mixin_linux_installation + build-subdir=buildbot_linux + lldb +-release ++debug + test + validation-test + long-test diff --git a/disable_warning.patch b/disable_warning.patch new file mode 100644 index 0000000..25464b2 --- /dev/null +++ b/disable_warning.patch @@ -0,0 +1,39 @@ +diff --color -Naur swift-corelibs-libdispatch-orig/src/apply.c swift-corelibs-libdispatch/src/apply.c +--- swift-corelibs-libdispatch-orig/src/apply.c 2022-10-01 10:48:05.000000000 -0500 ++++ swift-corelibs-libdispatch/src/apply.c 2024-12-17 14:56:01.110477562 -0600 +@@ -20,6 +20,9 @@ + + #include "internal.h" + ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Wcast-function-type-mismatch" ++ + typedef void (*dispatch_apply_function_t)(void *, size_t); + static char const * const _dispatch_apply_key = "apply"; + +@@ -366,3 +369,6 @@ + (dispatch_apply_function_t)_dispatch_Block_invoke(work)); + } + #endif ++ ++#pragma GCC diagnostic pop ++ +diff --color -Naur swift-corelibs-libdispatch-orig/src/data.c swift-corelibs-libdispatch/src/data.c +--- swift-corelibs-libdispatch-orig/src/data.c 2022-10-01 10:48:05.000000000 -0500 ++++ swift-corelibs-libdispatch/src/data.c 2024-12-17 14:57:39.514903781 -0600 +@@ -20,6 +20,9 @@ + + #include "internal.h" + ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Wcast-function-type-mismatch" ++ + /* + * Dispatch data objects are dispatch objects with standard retain/release + * memory management. A dispatch data object either points to a number of other +@@ -738,3 +741,5 @@ + return mep; + } + #endif // HAVE_MACH ++ ++#pragma GCC diagnostic pop diff --git a/enable_lzma.patch b/enable_lzma.patch deleted file mode 100644 index 286ca55..0000000 --- a/enable_lzma.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- swift/utils/build-script-impl.orig 2024-06-25 09:36:26.767949217 -0500 -+++ swift/utils/build-script-impl 2024-06-25 09:36:46.207322186 -0500 -@@ -2243,7 +2243,7 @@ - -DLLDB_ENABLE_CURSES=ON - -DLLDB_ENABLE_LIBEDIT=ON - -DLLDB_ENABLE_PYTHON=ON -- -DLLDB_ENABLE_LZMA=OFF -+ -DLLDB_ENABLE_LZMA=ON - -DLLDB_ENABLE_LUA=OFF - -DLLDB_INCLUDE_TESTS:BOOL="${should_configure_tests}" - -DLLDB_TEST_LIBCXX_ROOT_DIR:STRING="${libcxx_build_dir}" diff --git a/enablelzma.patch b/enablelzma.patch new file mode 100644 index 0000000..5371a21 --- /dev/null +++ b/enablelzma.patch @@ -0,0 +1,11 @@ +--- swift/utils/build-script-impl.orig 2022-04-12 11:12:59.832022240 -0500 ++++ swift/utils/build-script-impl 2022-04-12 11:13:19.694223857 -0500 +@@ -2272,7 +2272,7 @@ + -DLLDB_ENABLE_CURSES=ON + -DLLDB_ENABLE_LIBEDIT=ON + -DLLDB_ENABLE_PYTHON=ON +- -DLLDB_ENABLE_LZMA=OFF ++ -DLLDB_ENABLE_LZMA=ON + -DLLDB_ENABLE_LUA=OFF + -DLLDB_INCLUDE_TESTS:BOOL=$(false_true ${BUILD_TOOLCHAIN_ONLY}) + -DLLDB_TEST_USER_ARGS="${DOTEST_ARGS}" diff --git a/fclose_issues.patch b/fclose_issues.patch new file mode 100644 index 0000000..4625dd8 --- /dev/null +++ b/fclose_issues.patch @@ -0,0 +1,40 @@ +--- swift-tools-support-core/Sources/TSCBasic/FileSystem.swift.orig 2024-06-07 15:57:58.282574272 -0500 ++++ swift-tools-support-core/Sources/TSCBasic/FileSystem.swift 2024-06-07 16:00:41.442339293 -0500 +@@ -425,19 +425,19 @@ + if fp == nil { + throw FileSystemError(errno: errno, path) + } +- defer { fclose(fp) } ++ defer { fclose(fp!) } + + // Read the data one block at a time. + let data = BufferedOutputByteStream() + var tmpBuffer = [UInt8](repeating: 0, count: 1 << 12) + while true { +- let n = fread(&tmpBuffer, 1, tmpBuffer.count, fp) ++ let n = fread(&tmpBuffer, 1, tmpBuffer.count, fp!) + if n < 0 { + if errno == EINTR { continue } + throw FileSystemError(.ioError(code: errno), path) + } + if n == 0 { +- let errno = ferror(fp) ++ let errno = ferror(fp!) + if errno != 0 { + throw FileSystemError(.ioError(code: errno), path) + } +@@ -455,12 +455,12 @@ + if fp == nil { + throw FileSystemError(errno: errno, path) + } +- defer { fclose(fp) } ++ defer { fclose(fp!) } + + // Write the data in one chunk. + var contents = bytes.contents + while true { +- let n = fwrite(&contents, 1, contents.count, fp) ++ let n = fwrite(&contents, 1, contents.count, fp!) + if n < 0 { + if errno == EINTR { continue } + throw FileSystemError(.ioError(code: errno), path) diff --git a/fs.patch b/fs.patch new file mode 100644 index 0000000..fa12d1d --- /dev/null +++ b/fs.patch @@ -0,0 +1,15 @@ +--- llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp.orig 2022-08-03 19:13:51.591055629 -0500 ++++ llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp 2022-08-03 19:13:56.112348435 -0500 +@@ -73,7 +73,11 @@ + #include + #include + #include +-#include ++//#include ++#define FS_IOC_GETFLAGS _IOR('f', 1, long) ++#define FS_IOC_SETFLAGS _IOW('f', 2, long) ++#define FS_IOC_GETVERSION _IOR('v', 1, long) ++#define FS_IOC_SETVERSION _IOW('v', 2, long) + #include + #include + #include diff --git a/have_strcat.patch b/have_strcat.patch deleted file mode 100644 index 28a687c..0000000 --- a/have_strcat.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- swift-corelibs-foundation/Sources/CoreFoundation/internalInclude/CoreFoundation_Prefix.h.orig 2024-07-31 10:29:42.005997906 -0500 -+++ swift-corelibs-foundation/Sources/CoreFoundation/internalInclude/CoreFoundation_Prefix.h 2024-07-31 10:31:06.147568761 -0500 -@@ -200,6 +200,7 @@ - #endif - - #if !TARGET_OS_MAC -+#if 0 - #if !HAVE_STRLCPY - CF_INLINE size_t - strlcpy(char * dst, const char * src, size_t maxlen) { -@@ -229,6 +230,7 @@ - return dstlen + srclen; - } - #endif -+#endif // XYZZY - We do have them in Fedora - #endif // !TARGET_OS_MAC - - #if TARGET_OS_WIN32 diff --git a/latest_python.patch b/latest_python.patch index 0b33562..b260489 100644 --- a/latest_python.patch +++ b/latest_python.patch @@ -1,8 +1,8 @@ diff --color -Naur llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp ---- llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp 2024-08-03 13:04:05.441817601 -0500 -+++ llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp 2024-08-03 13:14:00.001254584 -0500 -@@ -74,7 +74,7 @@ - #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 7 +--- llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp 2024-09-19 10:08:49.705575598 -0500 ++++ llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp 2024-09-19 10:10:32.912369606 -0500 +@@ -76,7 +76,7 @@ + #elif PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 7 return _Py_Finalizing != nullptr; #else - return _Py_IsFinalizing(); @@ -11,9 +11,9 @@ diff --color -Naur llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Pytho } diff --color -Naur llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp ---- llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp 2024-08-03 13:04:05.442817667 -0500 -+++ llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp 2024-08-03 13:12:15.688335534 -0500 -@@ -182,7 +182,7 @@ +--- llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp 2024-09-19 10:08:49.706575663 -0500 ++++ llvm-project/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp 2024-09-19 10:12:11.357850178 -0500 +@@ -201,7 +201,7 @@ return; #endif @@ -22,7 +22,7 @@ diff --color -Naur llvm-project-orig/lldb/source/Plugins/ScriptInterpreter/Pytho Log *log = GetLog(LLDBLog::Script); m_was_already_initialized = true; -@@ -191,9 +191,6 @@ +@@ -210,9 +210,6 @@ m_gil_state == PyGILState_UNLOCKED ? "un" : ""); return; } diff --git a/need_pic.patch b/need_pic.patch deleted file mode 100644 index e78f4f4..0000000 --- a/need_pic.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- cmark/CMakeLists.txt.orig 2024-06-11 14:38:17.531997089 -0500 -+++ cmark/CMakeLists.txt 2024-06-11 14:38:24.161433974 -0500 -@@ -22,6 +22,8 @@ - - set(CMAKE_INCLUDE_CURRENT_DIR YES) - -+set(CMAKE_POSITION_INDEPENDENT_CODE ON) -+ - option(CMARK_FUZZ_QUADRATIC "Build quadratic fuzzing harness" OFF) - option(CMARK_LIB_FUZZER "Build libFuzzer fuzzing harness" OFF) - option(CMARK_THREADING "Add locks around static accesses" OFF) diff --git a/new_glibc.patch b/new_glibc.patch new file mode 100644 index 0000000..6a84f8c --- /dev/null +++ b/new_glibc.patch @@ -0,0 +1,27 @@ +diff --color -Naur swift-corelibs-foundation-orig/CoreFoundation/Base.subproj/CoreFoundation_Prefix.h swift-corelibs-foundation/CoreFoundation/Base.subproj/CoreFoundation_Prefix.h +--- swift-corelibs-foundation-orig/CoreFoundation/Base.subproj/CoreFoundation_Prefix.h 2023-07-06 10:02:48.000000000 -0500 ++++ swift-corelibs-foundation/CoreFoundation/Base.subproj/CoreFoundation_Prefix.h 2023-08-16 12:53:42.332226574 -0500 +@@ -189,7 +189,7 @@ + #define CF_RETAIN_BALANCED_ELSEWHERE(obj, identified_location) do { } while (0) + #endif + +-#if (TARGET_OS_LINUX && !TARGET_OS_ANDROID && !TARGET_OS_CYGWIN) || TARGET_OS_WIN32 ++#if (TARGET_OS_LINUX && !TARGET_OS_ANDROID && !TARGET_OS_CYGWIN && !ALREADY_HAVE_STRL_FUNCS) || TARGET_OS_WIN32 + CF_INLINE size_t + strlcpy(char * dst, const char * src, size_t maxlen) { + const size_t srclen = strlen(src); +diff --color -Naur swift-corelibs-foundation-orig/CoreFoundation/CMakeLists.txt swift-corelibs-foundation/CoreFoundation/CMakeLists.txt +--- swift-corelibs-foundation-orig/CoreFoundation/CMakeLists.txt 2023-07-06 10:02:48.000000000 -0500 ++++ swift-corelibs-foundation/CoreFoundation/CMakeLists.txt 2023-08-16 12:53:44.851386844 -0500 +@@ -80,6 +80,11 @@ + add_compile_definitions($<$:HAVE_SCHED_GETAFFINITY>) + endif() + endif() ++ # XYZZY ++ check_symbol_exists(strlcpy "string.h" HAVE_NEW_GLIBC) ++ if(HAVE_NEW_GLIBC) ++ add_compile_definitions($<$:ALREADY_HAVE_STRL_FUNCS>) ++ endif() + endif() + elseif(CMAKE_SYSTEM_NAME STREQUAL Windows) + # NOTE(compnerd) we only support building with the dynamic CRT as using the diff --git a/no-test.patch b/no-test.patch new file mode 100644 index 0000000..3df50ca --- /dev/null +++ b/no-test.patch @@ -0,0 +1,11 @@ +--- swift/utils/build-presets.ini.orig 2023-02-06 19:59:52.297617075 -0600 ++++ swift/utils/build-presets.ini 2023-02-06 20:00:17.131186971 -0600 +@@ -834,7 +834,7 @@ + # Executes the lit tests for the installable package that is created + # Assumes the swift-integration-tests repo is checked out + +-test-installable-package ++#test-installable-package + + # Build the benchmarks against the toolchain. + toolchain-benchmarks diff --git a/no_pipes.patch b/no_pipes.patch deleted file mode 100644 index 96f1191..0000000 --- a/no_pipes.patch +++ /dev/null @@ -1,83 +0,0 @@ -diff --color -Naur llvm-project/clang/utils/creduce-clang-crash.py llvm-project/clang/utils/creduce-clang-crash.py ---- llvm-project/clang/utils/creduce-clang-crash.py 2024-06-13 19:54:42.303016942 -0500 -+++ llvm-project/clang/utils/creduce-clang-crash.py 2024-06-13 19:57:15.922473813 -0500 -@@ -15,7 +15,6 @@ - import stat - import sys - import subprocess --import pipes - import shlex - import tempfile - import shutil -@@ -61,7 +60,7 @@ - - - def quote_cmd(cmd): -- return " ".join(pipes.quote(arg) for arg in cmd) -+ return " ".join(shlex.quote(arg) for arg in cmd) - - - def write_to_script(text, filename): -@@ -220,7 +219,7 @@ - ) - - for msg in self.expected_output: -- output += "grep -F %s t.log || exit 1\n" % pipes.quote(msg) -+ output += "grep -F %s t.log || exit 1\n" % shlex.quote(msg) - - write_to_script(output, self.testfile) - self.check_interestingness() -diff --color -Naur llvm-project/libcxx/utils/libcxx/test/dsl.py llvm-project/libcxx/utils/libcxx/test/dsl.py ---- llvm-project/libcxx/utils/libcxx/test/dsl.py 2024-06-13 19:55:23.627829920 -0500 -+++ llvm-project/libcxx/utils/libcxx/test/dsl.py 2024-06-13 19:57:42.124257373 -0500 -@@ -8,7 +8,7 @@ - - import os - import pickle --import pipes -+import shlex - import platform - import re - import shutil -@@ -281,7 +281,7 @@ - } - #endif - """ -- return programSucceeds(config, program, args=[pipes.quote(l) for l in locales]) -+ return programSucceeds(config, program, args=[shlex.quote(l) for l in locales]) - - - @_memoizeExpensiveOperation(lambda c, flags="": (c.substitutions, c.environment, flags)) -diff --color -Naur llvm-project/libcxx/utils/libcxx/test/format.py llvm-project/libcxx/utils/libcxx/test/format.py ---- llvm-project/libcxx/utils/libcxx/test/format.py 2024-06-13 19:55:23.627829920 -0500 -+++ llvm-project/libcxx/utils/libcxx/test/format.py 2024-06-13 19:58:01.911604299 -0500 -@@ -11,7 +11,7 @@ - import lit - import lit.formats - import os --import pipes -+import shlex - import re - import shutil - -diff --color -Naur ninja/configure.py ninja/configure.py ---- ninja/configure.py 2024-06-13 19:54:39.050795565 -0500 -+++ ninja/configure.py 2024-06-13 19:56:39.970026531 -0500 -@@ -23,7 +23,7 @@ - - from optparse import OptionParser - import os --import pipes -+import shlex - import string - import subprocess - import sys -@@ -264,7 +264,7 @@ - env_keys = set(['CXX', 'AR', 'CFLAGS', 'CXXFLAGS', 'LDFLAGS']) - configure_env = dict((k, os.environ[k]) for k in os.environ if k in env_keys) - if configure_env: -- config_str = ' '.join([k + '=' + pipes.quote(configure_env[k]) -+ config_str = ' '.join([k + '=' + shlex.quote(configure_env[k]) - for k in configure_env]) - n.variable('configure_env', config_str + '$ ') - n.newline() diff --git a/no_pipes_58.patch b/no_pipes_58.patch new file mode 100644 index 0000000..49f2754 --- /dev/null +++ b/no_pipes_58.patch @@ -0,0 +1,270 @@ +diff --color -Naur llvm-project/clang/utils/creduce-clang-crash.py llvm-project/clang/utils/creduce-clang-crash.py +--- llvm-project/clang/utils/creduce-clang-crash.py 2024-06-20 13:38:53.943180833 -0500 ++++ llvm-project/clang/utils/creduce-clang-crash.py 2024-06-20 13:42:30.244711005 -0500 +@@ -14,7 +14,6 @@ + import stat + import sys + import subprocess +-import pipes + import shlex + import tempfile + import shutil +@@ -57,7 +56,7 @@ + sys.exit("ERROR: `%s` not found in %s" % (cmd_name, cmd_dir)) + + def quote_cmd(cmd): +- return ' '.join(pipes.quote(arg) for arg in cmd) ++ return ' '.join(shlex.quote(arg) for arg in cmd) + + def write_to_script(text, filename): + with open(filename, 'w') as f: +@@ -199,7 +198,7 @@ + """ % (disable_symbolization, quote_cmd(self.get_crash_cmd())) + + for msg in self.expected_output: +- output += 'grep -F %s t.log || exit 1\n' % pipes.quote(msg) ++ output += 'grep -F %s t.log || exit 1\n' % shlex.quote(msg) + + write_to_script(output, self.testfile) + self.check_interestingness() +diff --color -Naur llvm-project/compiler-rt/test/asan/lit.cfg.py llvm-project/compiler-rt/test/asan/lit.cfg.py +--- llvm-project/compiler-rt/test/asan/lit.cfg.py 2024-06-20 13:38:17.808753484 -0500 ++++ llvm-project/compiler-rt/test/asan/lit.cfg.py 2024-06-20 13:43:18.446949016 -0500 +@@ -6,14 +6,8 @@ + + import lit.formats + +-# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +-# it's not available. +-try: +- import shlex +- sh_quote = shlex.quote +-except: +- import pipes +- sh_quote = pipes.quote ++import shlex ++sh_quote = shlex.quote + + def get_required_attr(config, attr_name): + attr_value = getattr(config, attr_name, None) +diff --color -Naur llvm-project/compiler-rt/test/lit.common.cfg.py llvm-project/compiler-rt/test/lit.common.cfg.py +--- llvm-project/compiler-rt/test/lit.common.cfg.py 2024-06-20 13:38:17.788752141 -0500 ++++ llvm-project/compiler-rt/test/lit.common.cfg.py 2024-06-20 13:43:44.961730162 -0500 +@@ -12,14 +12,8 @@ + import lit.formats + import lit.util + +-# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +-# it's not available. +-try: +- import shlex +- sh_quote = shlex.quote +-except: +- import pipes +- sh_quote = pipes.quote ++import shlex ++sh_quote = shlex.quote + + def find_compiler_libdir(): + """ +diff --color -Naur llvm-project/compiler-rt/test/memprof/lit.cfg.py llvm-project/compiler-rt/test/memprof/lit.cfg.py +--- llvm-project/compiler-rt/test/memprof/lit.cfg.py 2024-06-20 13:38:17.852756440 -0500 ++++ llvm-project/compiler-rt/test/memprof/lit.cfg.py 2024-06-20 13:44:09.179356996 -0500 +@@ -6,14 +6,8 @@ + + import lit.formats + +-# Get shlex.quote if available (added in 3.3), and fall back to pipes.quote if +-# it's not available. +-try: +- import shlex +- sh_quote = shlex.quote +-except: +- import pipes +- sh_quote = pipes.quote ++import shlex ++sh_quote = shlex.quote + + def get_required_attr(config, attr_name): + attr_value = getattr(config, attr_name, None) +diff --color -Naur llvm-project/compiler-rt/test/sanitizer_common/ios_commands/iossim_run.py llvm-project/compiler-rt/test/sanitizer_common/ios_commands/iossim_run.py +--- llvm-project/compiler-rt/test/sanitizer_common/ios_commands/iossim_run.py 2024-06-20 13:38:17.946762755 -0500 ++++ llvm-project/compiler-rt/test/sanitizer_common/ios_commands/iossim_run.py 2024-06-20 13:48:37.348371396 -0500 +@@ -1,6 +1,6 @@ + #!/usr/bin/env python3 + +-import glob, os, pipes, sys, subprocess ++import glob, os, shlex, sys, subprocess + + + device_id = os.environ.get('SANITIZER_IOSSIM_TEST_DEVICE_IDENTIFIER') +@@ -39,7 +39,7 @@ + rm_args.append(arg) + else: + # FIXME(dliew): pipes.quote() is deprecated +- rm_args.append(pipes.quote(arg)) ++ rm_args.append(shlex.quote(arg)) + rm_cmd_line = ["/bin/rm"] + rm_args + rm_cmd_line_str = ' '.join(rm_cmd_line) + # We use `shell=True` so that any wildcard globs get expanded by the shell. +diff --color -Naur llvm-project/libcxx/utils/libcxx/test/config.py llvm-project/libcxx/utils/libcxx/test/config.py +--- llvm-project/libcxx/utils/libcxx/test/config.py 2024-06-20 13:38:59.394547032 -0500 ++++ llvm-project/libcxx/utils/libcxx/test/config.py 2024-06-20 13:45:49.931125052 -0500 +@@ -9,7 +9,6 @@ + import copy + import os + import pkgutil +-import pipes + import platform + import re + import shlex +@@ -434,7 +433,7 @@ + def quote(self, s): + if platform.system() == 'Windows': + return lit.TestRunner.quote_windows_command([s]) +- return pipes.quote(s) ++ return shlex.quote(s) + + def configure_substitutions(self): + sub = self.config.substitutions +diff --color -Naur llvm-project/libcxx/utils/libcxx/test/dsl.py llvm-project/libcxx/utils/libcxx/test/dsl.py +--- llvm-project/libcxx/utils/libcxx/test/dsl.py 2024-06-20 13:38:59.394547032 -0500 ++++ llvm-project/libcxx/utils/libcxx/test/dsl.py 2024-06-20 13:45:11.318531231 -0500 +@@ -8,7 +8,7 @@ + + import os + import pickle +-import pipes ++import shlex + import platform + import re + import shutil +@@ -261,7 +261,7 @@ + } + #endif + """ +- return programSucceeds(config, program, args=[pipes.quote(l) for l in locales]) ++ return programSucceeds(config, program, args=[shlex.quote(l) for l in locales]) + + @_memoizeExpensiveOperation(lambda c, flags='': (c.substitutions, c.environment, flags)) + def compilerMacros(config, flags=''): +diff --color -Naur llvm-project/libcxx/utils/libcxx/test/format.py llvm-project/libcxx/utils/libcxx/test/format.py +--- llvm-project/libcxx/utils/libcxx/test/format.py 2024-06-20 13:38:59.394547032 -0500 ++++ llvm-project/libcxx/utils/libcxx/test/format.py 2024-06-20 13:45:31.689899688 -0500 +@@ -9,7 +9,7 @@ + import lit + import lit.formats + import os +-import pipes ++import shlex + import re + import shutil + +diff --color -Naur ninja/configure.py ninja/configure.py +--- ninja/configure.py 2024-06-20 13:38:14.957561954 -0500 ++++ ninja/configure.py 2024-06-20 13:46:12.859665292 -0500 +@@ -23,7 +23,7 @@ + + from optparse import OptionParser + import os +-import pipes ++import shlex + import string + import subprocess + import sys +@@ -264,7 +264,7 @@ + env_keys = set(['CXX', 'AR', 'CFLAGS', 'CXXFLAGS', 'LDFLAGS']) + configure_env = dict((k, os.environ[k]) for k in os.environ if k in env_keys) + if configure_env: +- config_str = ' '.join([k + '=' + pipes.quote(configure_env[k]) ++ config_str = ' '.join([k + '=' + shlex.quote(configure_env[k]) + for k in configure_env]) + n.variable('configure_env', config_str + '$ ') + n.newline() +diff --color -Naur swift/utils/build_swift/build_swift/shell.py swift/utils/build_swift/build_swift/shell.py +--- swift/utils/build_swift/build_swift/shell.py 2024-06-20 13:39:16.267680494 -0500 ++++ swift/utils/build_swift/build_swift/shell.py 2024-06-20 13:47:56.850650939 -0500 +@@ -23,7 +23,7 @@ + import sys + from copy import copy as _copy + from pathlib import Path +-from pipes import quote as _quote ++from shlex import quote as _quote + from shlex import split + from subprocess import CalledProcessError + +diff --color -Naur swift/utils/sil-opt-verify-all-modules.py swift/utils/sil-opt-verify-all-modules.py +--- swift/utils/sil-opt-verify-all-modules.py 2024-06-20 13:39:17.951793627 -0500 ++++ swift/utils/sil-opt-verify-all-modules.py 2024-06-20 13:40:50.278995757 -0500 +@@ -13,7 +13,7 @@ + import glob + import multiprocessing + import os +-import pipes ++import shlex + import subprocess + import sys + import tempfile +@@ -91,7 +91,7 @@ + + + def quote_shell_command(args): +- return " ".join([pipes.quote(a) for a in args]) ++ return " ".join([shlex.quote(a) for a in args]) + + + def run_commands_in_parallel(commands): +diff --color -Naur swift/utils/swift_build_support/swift_build_support/build_script_invocation.py swift/utils/swift_build_support/swift_build_support/build_script_invocation.py +--- swift/utils/swift_build_support/swift_build_support/build_script_invocation.py 2024-06-20 13:39:16.270680695 -0500 ++++ swift/utils/swift_build_support/swift_build_support/build_script_invocation.py 2024-06-20 13:41:40.348359192 -0500 +@@ -11,7 +11,7 @@ + # ===---------------------------------------------------------------------===# + + import os +-import pipes ++import shlex + import platform + + from build_swift.build_swift import argparse +@@ -128,9 +128,9 @@ + "--build-jobs", str(args.build_jobs), + "--lit-jobs", str(args.lit_jobs), + "--common-cmake-options=%s" % ' '.join( +- pipes.quote(opt) for opt in cmake.common_options()), ++ shlex.quote(opt) for opt in cmake.common_options()), + "--build-args=%s" % ' '.join( +- pipes.quote(arg) for arg in cmake.build_args()), ++ shlex.quote(arg) for arg in cmake.build_args()), + "--dsymutil-jobs", str(args.dsymutil_jobs), + ] + +@@ -388,7 +388,7 @@ + if args.extra_cmake_options: + impl_args += [ + "--extra-cmake-options=%s" % ' '.join( +- pipes.quote(opt) for opt in args.extra_cmake_options) ++ shlex.quote(opt) for opt in args.extra_cmake_options) + ] + + if args.lto_type is not None: +diff --color -Naur swift/utils/swift_build_support/swift_build_support/shell.py swift/utils/swift_build_support/swift_build_support/shell.py +--- swift/utils/swift_build_support/swift_build_support/shell.py 2024-06-20 13:39:16.271680762 -0500 ++++ swift/utils/swift_build_support/swift_build_support/shell.py 2024-06-20 13:42:02.214828084 -0500 +@@ -14,7 +14,7 @@ + # ---------------------------------------------------------------------------- + + import os +-import pipes ++import shlex + import platform + import shutil + import subprocess +@@ -35,7 +35,7 @@ + + + def _quote(arg): +- return pipes.quote(str(arg)) ++ return shlex.quote(str(arg)) + + + def quote_command(args): diff --git a/resource_dir.patch b/resource_dir.patch deleted file mode 100644 index c2000b9..0000000 --- a/resource_dir.patch +++ /dev/null @@ -1,46 +0,0 @@ -From f189a95d6371cdb44f773029f7a19b94f0d9a839 Mon Sep 17 00:00:00 2001 -From: Finagolfin -Date: Fri, 28 Jun 2024 20:06:06 +0530 -Subject: [PATCH] [ClangImporter] Make sure the `-resource-dir` is checked - before the `-sdk`, as done everywhere else in the compiler - -Otherwise, these module maps can be pulled from a system SDK instead when -building a fresh Swift stdlib, fixes #74696. ---- - lib/ClangImporter/ClangIncludePaths.cpp | 16 ++++++++-------- - 1 file changed, 8 insertions(+), 8 deletions(-) - -diff --git a/lib/ClangImporter/ClangIncludePaths.cpp b/lib/ClangImporter/ClangIncludePaths.cpp -index 23431af724459..7e6ca8c2a9cb6 100644 ---- a/lib/ClangImporter/ClangIncludePaths.cpp -+++ b/lib/ClangImporter/ClangIncludePaths.cpp -@@ -35,10 +35,10 @@ static std::optional getActualModuleMapPath( - - Path result; - -- StringRef SDKPath = Opts.getSDKPath(); -- if (!SDKPath.empty()) { -- result.append(SDKPath.begin(), SDKPath.end()); -- llvm::sys::path::append(result, "usr", "lib", "swift"); -+ if (!Opts.RuntimeResourcePath.empty()) { -+ result.clear(); -+ result.append(Opts.RuntimeResourcePath.begin(), -+ Opts.RuntimeResourcePath.end()); - llvm::sys::path::append(result, platform); - if (isArchSpecific) { - llvm::sys::path::append(result, arch); -@@ -52,10 +52,10 @@ static std::optional getActualModuleMapPath( - return result; - } - -- if (!Opts.RuntimeResourcePath.empty()) { -- result.clear(); -- result.append(Opts.RuntimeResourcePath.begin(), -- Opts.RuntimeResourcePath.end()); -+ StringRef SDKPath = Opts.getSDKPath(); -+ if (!SDKPath.empty()) { -+ result.append(SDKPath.begin(), SDKPath.end()); -+ llvm::sys::path::append(result, "usr", "lib", "swift"); - llvm::sys::path::append(result, platform); - if (isArchSpecific) { - llvm::sys::path::append(result, arch); diff --git a/sources b/sources index c1b5346..a45c2ce 100644 --- a/sources +++ b/sources @@ -1,44 +1,35 @@ -SHA512 (cmake.tar.gz) = 193e6fb40f29b4e9ff216545248dd25c9e7a54bf79419a312bcdac630d4c9af621d8b4eccfbb9dd0a95af8bc66f410c9972e57e30fd839113ce1516a7f7905b4 -SHA512 (cmark.tar.gz) = 5f5dd39e9e686b6872312193eb45d2b219e5d3867b5fb9c2a833adf6dbd93d54c022ce7e2b96c2a9006118c1b2acf676937a127a4a8341f316154c32ba6ba3ca -SHA512 (corelibs-foundation.tar.gz) = 4473cbf1601fcfa6931bb52e961c3fbaa7b649e3f8c53b9d192b1dd842b5b0d0ef97ced7bcd4e56b79beb19b05f7c1303de13a00fe371a039708b73bc78e7160 -SHA512 (corelibs-libdispatch.tar.gz) = b277dcfa15a9c7d0b6a7148b0c0d8cb000df314c9af3fb9461c6128ab64e89909f0ac8e7c68521e019024894e4cff5dac03597abcf91596541dcd7d40da180c4 -SHA512 (corelibs-xctest.tar.gz) = 9bfb582d42cc7a905df25204c6a7645ac3c0d167f9c3f1ea81be3ebe9cb6efabb5e410903c1644d2be06c18468caf3b9656c6a7e0abcc5b9b16cc9f0d2774a86 -SHA512 (icu.zip) = 3deb56e8109783049c9dac04073aa084bcd92a0370b820ba4dbdad641a5a3f753f6ef8fd575ac82385fc1f2f224118313a6987d513991826ed7355307f6d9696 -SHA512 (indexstore-db.tar.gz) = e7c6da5fdab81c9f385f456b5a9ef6c0724e353c26d13b6d9ef9deab042a6a512cb2627bcf797c1456f4a2d4e58403db55184ebc0a0dbbe8f63698fc65d1065b -SHA512 (llbuild.tar.gz) = d38e3df709f795c002d5d77ee2faf593179d591a9acb9e5a74c06dca4a52ff2f9533ba43b6b76579980a4f5c5a6058e188cf2c5e5443501b00cf7c0760917ae9 -SHA512 (llvm-project.tar.gz) = c6943efd5407901ad8d5db885f3d03f5f5b7be006c01960c3a60a9a0f4e635e4e963bfa84d85cbdea10326f905524f091523ebdfbcd6b872b9c1a3d1ca94c691 +SHA512 (cmake.tar.gz) = d00dc63627c452494f0f240792b742529a9ba00622cc69ba42bda26299dcdf0f5596e1e7e17bff0daf0543e94de1f23b37d8fce8a79e8c90aeaca10c50bd4605 +SHA512 (cmark.tar.gz) = c53669e9d0166e8f62e7350455fdc96af181ca0c2876461807caa0a13a4ead466088d24f1e7de0e286e217806e0176c72c58da521750bfbca8860e177445158d +SHA512 (corelibs-foundation.tar.gz) = 6b574dbcd0f2fcc08093bb39a79bd1e8454ecdf3645ea9608e390370e8c63dad8e2e978084ac9e2c405b2c630287f5dab26cbbc9ee2ebad1892257776627eda2 +SHA512 (corelibs-libdispatch.tar.gz) = a3344e9df912c5cf86aa7e225748a22a747f48a41354e9bc38d03a20231676c199d2a1cd66091cc1edc87e2236fff79d92988b205c4921ec732c2a695fea23b6 +SHA512 (corelibs-xctest.tar.gz) = 1c804cfd6815a397241d2fcaa932950989507f3163c8d7ba777b726935d9ec1df59fbe2aa1b16c1dce0d52851ce14db64b0afec83113e4a1f754afad36b64a80 +SHA512 (icu.tar.gz) = 6902ccee36b29f31d7615d5bf5ce78e0d33744c8dcefce1aec90de7e18e384f673b4301fcca1f3cbe81f236dc250763104bff1af240621ff54b65a053ba6f6d7 +SHA512 (indexstore-db.tar.gz) = 6b088f42be7716ff03a77d8a14d0a5fed63f8d8680432badc76afd0a6ce8a61776b61fda59150165b12d9f5e54afcc493bd70ec28faac60a2ec6d9a48ba91945 +SHA512 (llbuild.tar.gz) = 1106ee4468e57daef87e81563ecdac07d34a7967110dd73b034d5106f1423d23df51158c6c40d02dc5dd0366d790e00bb8e9b9e59a71941912d77055320c1109 +SHA512 (llvm-project.tar.gz) = 16fbe31be33474d4d8bb2751dc7eb9634a001f2dfe929640b90995f2fece584427a9a83c7b84b63b8398737753acfab22ab11e016b2fab27b1a9a056d352c751 SHA512 (ninja.tar.gz) = 1bca38877c70ee6613f347ffccef5adc02ba0a3947c62ae004ea97f918442b5a3de92378e4f820ae2a7676bc7609d25fbc7d41f6cfb3a61e5e4b26ec3639e403 -SHA512 (package-manager.tar.gz) = 483925892b96ae83aeb9849dd994ae4be2802735aa761b70809f155c3181cfba77cc7cfac72ccb3cad99ef3cdd6e62907915fcdafad05988a85994bb794959fc -SHA512 (sourcekit-lsp.tar.gz) = 9e96a03d47364627bdc5b5d6a028c2f4da99a790892045f2538bcb6b44d533c37b31278db8f3c1041d66e1acae913b618399494ab030664cdfb5f8d61c4a2582 -SHA512 (swift-argument-parser.tar.gz) = 2fa09e86da67b6feb09f3c11b656e0e17c050243f9cdf40da3646c881f441bb545c3820345934da60ab80f2e77f575d1c1adb55d8017277e4fe01b68b5a2f692 -SHA512 (swift-asn1.tar.gz) = f0e3bd7a4369b84a140e46a111d3985b62e74581ca631e4354ef769ae7f9190ffb3ff68ea3917df9c377fc308a8681a69b8dea4158a05daf798960be229a48c2 -SHA512 (swift-atomics.tar.gz) = efd9a6e6b016fb0ad2de5d98fb219b893e271378a8c8d23d01215e855830fc6f1728eaec74ba33983ab9e8aece5ed65e310bbae84c289b43e458941080293351 -SHA512 (swift-certificates.tar.gz) = ea645425fffdb377efe1de9b897a7a6e42dc6668ce93068bbe6de69d42ab6e9801b6d9ff817b728d58eb9e2f66c4932869c281864bc432bd9fb9acb829311c41 -SHA512 (swift-collections.tar.gz) = 830a3a8923e498a58e5638bda5157c0a8ca20032daa73e752bb445314e3c8050cda85dfba78105f3e76d66832e804b8efc6c05aec117b687a83fc34e9c724639 -SHA512 (swift-crypto.tar.gz) = 2d79147d32bfb8449726c73c8b267262cf1ddc7c18637f4168e3fd848ba71c0719b23b5683ca513260cbc537fc439e38488ae16010717303625bceb7d5edd36f -SHA512 (swift-docc-render-artifact.tar.gz) = 07c2512e46ea38109f89fe0d5f09f419ed6be85b9e407613c300be769570c65d5d895ffbd0bc392c57aa1f9d0b65db665b92c3f4e5c0c37b6967471ca7652665 -SHA512 (swift-docc-symbolkit.tar.gz) = 2f7c87c77db7de1c9592b76e9586a148d5c1d63640fdc6bcea2b97fc7df43abf410aa220e3c6a86c98362d5867f2bb146b876f0944b4f2dc1390b8ee1a8a89f6 -SHA512 (swift-docc.tar.gz) = 3e80aab54c509097ad8edb27d605c31d89e2dea7c1939386ac34c2dde41a841f352631012e942a112ad87a8655dcde9e25ba417119ee69626c40addae75ba211 -SHA512 (swift-driver.tar.gz) = 42c9978ec26f9ed81b981f80bf4f12d4abf97a7f852a6d97bd564ca5eca8e26dad9e1acb19ed119b54301a828a6c6f52d6e5ab7f4fb29725fe42ca935978002d -SHA512 (swift-experimental-string-processing.tar.gz) = be5ef92d5ad8cd34fecd31dd427c275fdc537d2795ea5fd76e27484b6c43e1a3187b603c5544a5cde7806763f9fbf33103910a9054a2d27549028f847dac371f -SHA512 (swift-format.zip) = 1de7cbd484020e354347c19dc3f2da8ab169f938df00382e126a07b8312f515d52eefebf20d3da3b8700b9d4c2a7fee73edd0793b6dd0120f93e550f1f19a09a -SHA512 (swift-foundation-icu.zip) = f2e70bffcd6b998a6de6849e71f4cdc97bd28d8d5294823ef2857ee0a9aaabd98d76a4672858ec2c702a4775290d215b5ba81611dc17ec2da34a3dac46a26219 -SHA512 (swift-foundation.zip) = 387549e00393d48db218cc95f5c0f66ea63f17cc3fc68ee3184fb4020a6ae88353377e771fc4a45b03bd580cb23386da15c00bbf3679dd6e7fc74438f0d099b2 -SHA512 (swift-integration-tests.tar.gz) = 5a7719455e75a8ae54838ca272764154437c5d9a984c035aa23988585ea2698882f97419780ff84b74ffce5da1cf67d6f4af8eae4dacd9e394f3b3f398d510a3 -SHA512 (swift-llvm-bindings.zip) = ef5f5daa8b4cbdd90411a85ebb95bd6279cb4ad30d7a7ea52c8e3d613daa12b8639f7fd5073a6ff759846e3f292773ef446ed3af6f20fa61c9b9a91d61817e4a -SHA512 (swift-lmdb.tar.gz) = d137067c79e802451fc4882908aebc986504f9b2c3cd25bdbfdf6d52aea1ee53c5a0f5ff5df591036814d241f5d1471a7a61bcef1dbafb80304ba807302b7b84 -SHA512 (swift-markdown.tar.gz) = 394a4e4d2b176a19aa0f5c294ce6da30cf3fc1d696c7cb53363ffe0187905c4d43d0475c94a02c5dd98a6cc7f56ba2ac4c5b1ca5f6220e4cbadbfc04d0ea8b37 +SHA512 (package-manager.tar.gz) = 9e725632568db8ebf1276dccc07efc8a28e5dc92821df87527e75529960d40412e02c840d7d14f9c2f1149de5cc30056bc05dc066bec5701bf47334c3b203184 +SHA512 (sourcekit-lsp.tar.gz) = 3ce7581ab1cae33ebd814a56f21efed069587b14a08c31cfc0af7053a2f7f4df1f949fafc78ca5b4286df6c1d8a35131521d67f6723e5dc6f923059c60419149 +SHA512 (swift-argument-parser.tar.gz) = f98558f3ea1f64a0046e037911b060b39a01ef60956c3529ddece76bb38181fbcf8fa6f08d3ee579755882e4a1a684316792627aeb698b20aafcac813d86dc9f +SHA512 (swift-atomics.tar.gz) = b538a9709eadfe96831393b977add28227da65d814b248bd03effc2bb7e36fff69cca692a6fd5946a029d43ddaca9b38aee91d9abf01e09ec8e5473d07d6886f +SHA512 (swift-collections.tar.gz) = f603f96827051fab8376ccb9d951e57e0ddd2e8a26350419c9d7356458e278ed7a9e8f1d240f5a9141880b476d53fb3c2148bf7ec15c928514acd1eed0ffc2ca +SHA512 (swift-crypto.tar.gz) = 93a1304a2ba7e7b7335f0c137339fb3ef510fd12120ed0ac1edaa678b6b013b32690d380f94936cc4bd76ce3f14f06b9e69e2eacdad6a1924749b71c08037217 +SHA512 (swift-docc-render-artifact.tar.gz) = c15adec69b5768ffcbe57cc7b08162d0475b9857057bb972be3bf909b973a4ed0103a1a5f182f108dfdf2c8c71131b3003cbfe7519df7fa645414bbd29507434 +SHA512 (swift-docc-symbolkit.tar.gz) = b4fa5587dbc85bb37af3904fd834efe1ead132ed07f076b146f78ee9947bb183a9fb6607686ed0cae4b92a19283fccfc39fefde378eb726396341ac12b874f58 +SHA512 (swift-docc.tar.gz) = 3cda8e2b01264a4b92e78dcff8629da2320d4461469dfe3a5589a14862ec88198d718dd8fad843953c89397d06c0cb0bf418bcdbfab9be905dadce75b125eafa +SHA512 (swift-driver.tar.gz) = 9da3de6b4242406f3465da42101ac4d64e295916a54b6a52dce7334ab62ca1e40305d2a202873060cf69dcb921d9b0f8a8229090a25613461b991eb334df5bf8 +SHA512 (swift-experimental-string-processing.tar.gz) = caebf49d60f589cdd377ccc72005f2c958e90e50cc650f077c42f8ee8e18e744925efa4786bfccbecb186f2cc383c859b75216a8449422a4a18f056e2e64ed99 +SHA512 (swift-format.tar.gz) = 683850cd6035f750ff2e9e066e53cae92370cddcfadf5e4df61c646c4b5911c0c644d0652752b22f00df9753fdeb750e7d7d61c72236bc6e8753eb4958c20ec1 +SHA512 (swift-integration-tests.tar.gz) = fbf26c69cd8b3e0f0f028aaf9da81f14ce528a2495f03b612ad0206e04c0c5b73dbe328b8953cbf168e406d11c01c72f6f38aa51965ca3fa72e9304b2057c8e2 +SHA512 (swift-lmdb.tar.gz) = 2d63f67867b767e9d2763308d15d9eac546de24cc93226a6b3a9a3f2d506c47f1d32d54c3faf4accb859d2872d7233e258e40f91b77c7968389b81861cc71b98 +SHA512 (swift-markdown.tar.gz) = a190320d309701fc86125fa78eb78bed01d831b00baab44f4f57ef6e27115180c29dbf6bafde3f1ed95a2c3584c8d47b96e586aaa69179b57a9f86cfe4273754 SHA512 (swift-nio-ssl.tar.gz) = 5ba54beb93d669715b05627455003aad29847f04886ed08fd6bcc37f3ffcb64183c033ae3220446d69bc720a3da5940f3979b8039ddbe8869d81d70a18c42e36 SHA512 (swift-nio.tar.gz) = e8b8bc5d49c92e327d660c1ee34a9bbdb169e19501211ed56765c51303905494f808d4b76ae9f9a50718db5efe337961ef6baad146197c9d7ba7a8b6c08e3a8e -SHA512 (swift-numerics.tar.gz) = 2d6a2c6aa21a86ece26983cbcaa366bd726e4e0c4341e4801510a0227be8856280102fd04726a91b5b335aaf7eb609b04113d6af824e904ae4c768755dd6707a -SHA512 (swift-stress-tester.tar.gz) = 7aecac7ffa302d1812a0d7ef4ab6f21ba867ad90cb76bc547bc4bc3ad46d8a2db009464dc22f008c12ad1b280fe779add77c2cafa3d68a401c018e09d867f7bc -SHA512 (swift-syntax.tar.gz) = 06b9f1cf65d7adb686b587a8c52f95362f1a2543d013aba47e5101a9e3c097584f338465c8a4e1dc08f5d8f24fa0c2533e3e43b199b627002e54ea0e1b413ff9 -SHA512 (swift-system.tar.gz) = 64c53b2e43e0b01135f2566e11af0f527557b64d3acb63904cc6e7ed74a4c08118c887670fd2ecc82e3036d96ed1dffd6066f37d9c660b1e65a63a1f5cee7586 -SHA512 (swift-testing.tar.gz) = b8ba58ed115dbbd4a0f864048a7a40df899d5639a24584a67bde7283b3e9495c55d133af774d57ad93fc3f697b9b90095e9541367a5cda0ccfca0b2deacd1697 -SHA512 (swift-tools-support-core.tar.gz) = d37f65e7fda89578c2ecfda3a0f3edfbf67b43ce7a5821e86e72cbec8d17f329a9ea518ecf3e8a51aa54e183cf0e982593a9978472fae51440faa14478f0f74a -SHA512 (swift-xcode-playground-support.tar.gz) = 0ce3abcbf04c20f1c06cba3c932e1807eb0d097f11f644f86abeb8f32d9ae981e74edaf627820e32467554aa462635d72add3e5905f2e3b2f29d4104a95af1d6 -SHA512 (swift.tar.gz) = f0cd74beb4312e6211f804f9ef5b3e66cc64e62e9f6c91863e1bb26a647a82e67ca041e5289a2a9922c24a4f24da7a8f44c41d682460084e67642d5df73a6dee -SHA512 (wasi-sdk.tar.gz) = e264240dc7dbcf6398c8ca09bc108298f4a8aa955af22de5a3015fbcde81cb09dd83cd48349090082d5de0e8a3dbcf746c7b14657c67657b3f2f1ab28bb9cf05 -SHA512 (wasm.tar.gz) = b65ba20ec64b1c4fbaa7f4d0ce421bdae0cdc8c263dedeeca43c5ae1efec6dbd575a2d1bc80e0d43cfc9d3a6aea90e9ea56a49ea9d10d3141b4af8f2950ae3ff -SHA512 (yams.tar.gz) = a529f7c3419ec353c360a2b14a9d939e85deebdd534049896347dce74e311cbe99c66565886397193ead24d5914bf266d4531d1be8f6a5a67174aa87f62e1617 -SHA512 (zlib13.zip) = 7309db617cfc389544d84b8d6cd89ac1720bcb66925e6f0e56e9240f12ea17ae14f36fd4016fbd2c77203812e43040cd80c4649a0b099f2884af959812d9a581 +SHA512 (swift-numerics.tar.gz) = 7d0d8f27d8c639f92fb652183ade9032b36f39e19b966aa734cab5b4d43ce5d342856dddd87ac1d4cd605c18583c8e629f37634e440de34ec0d5e18aa138d0ba +SHA512 (swift-stress-tester.tar.gz) = e94601e1e26838c38a280008222a118ace80fbf45d6eadcf7467eafa2ef4bd4affa31478c299570018a89a0c3850466b70022d2523d708959c680dc2b089075e +SHA512 (swift-syntax.tar.gz) = b9c016b6cd2ff40db6321df710d21a0de286160c71bba6d41aef33d360ffcc5203ac9a50fb850c1fd74014510b2a6d560881a531f99bf8876569d8366866aba3 +SHA512 (swift-system.tar.gz) = fec08fbc352197215596974303cd7e08b46ff44b1bd36c70b95be4e7490880f4d7e645e64e90f1c81bfca06d9302c600ccc02c9f5cc7b83a69da46489b105e1c +SHA512 (swift-tools-support-core.tar.gz) = f38400d2fb31017c4ff186bde408a1d3523ab6a6f1044668c4655a4737b7233552dbc2ec1035bdb18ecf07df500ac32e6a313df58292567069bab2ab52530f05 +SHA512 (swift-xcode-playground-support.tar.gz) = 66b186c8d6e8574e693172fa2acde44dd4d7b2225130c4f701a2d3a0922a9fce25e5889f391ebfb8074b55614654349365ef696e4089f418ddeec4f0162162cc +SHA512 (swift.tar.gz) = 2cc0a34fc4451553acea9be14b56d8e33dfa9f4a65847426f0998113cb42af5cf56acbda7be55b07e3f1a8524af66a98d786f5e8b770cf733159d6b84588d21d +SHA512 (yams.tar.gz) = 91feecb95d1997235e443dea925ff11fa665e94c12c8eca2ed066ef340a51ec0253df2545d91184c31423cb4b039e1f89ac8f743cf3f154c9d93495eecc45432 diff --git a/swift-lang.spec b/swift-lang.spec index f2e3d44..488cd67 100644 --- a/swift-lang.spec +++ b/swift-lang.spec @@ -1,9 +1,3 @@ -# 6/27/24 - temporary disable __brp_add_determinism -# as it prevents the package from successfully building -%if 0%{?fedora} >= 41 -# on Fedora 41/Rawhide -%undefine __brp_add_determinism -%endif %global debug_package %{nil} %undefine _auto_set_build_flags @@ -12,34 +6,28 @@ ################################################# # Make sure these are changed for every release! ################################################# -%global swift_version 6.0.1-RELEASE -%global package_version 6.0.1 -%global fedora_release 1 - -%global swift_source_location swift-source +%global swift_version 5.8.1-RELEASE +%global fedora_release 6 +%global package_version 5.8.1 # Set to the right version per the json file -%global icu_version 69 -%global yams_version 5.0.6 -%global swift_argument_parser_version 1.2.3 -%global swift_crypto_version 3.0.0 +%global swift_source_location swift-source +%global icu_version 65-1 +%global yams_version 5.0.1 +%global swift_argument_parser_version 1.0.3 +%global swift_crypto_version 2.2.3 %global ninja_version 1.11.1 -%global cmake_version 3.24.2 -%global swift_atomics_version 1.2.0 -%global swift_collections_version 1.1.2 -%global swift_numerics_version 1.0.2 -%global swift_system_version 1.3.0 +%global cmake_version 3.19.6 +%global swift_atomics_version 1.0.2 +%global swift_collections_version 1.0.1 +%global swift_numerics_version 1.0.1 +%global swift_system_version 1.1.1 %global swift_nio_version 2.31.2 %global swift_nio_ssl_version 2.15.0 -%global swift_certificates_version 1.0.1 -%global swift_asn1_version 1.0.0 -%global wasmkit_version 0.0.3 -%global wasi_version 20 -%global swift_format_version 6.0 -%global swift_llvm_bindings_version 6.0 -%global swift_foundation_icu_version 6.0 -%global swift_foundation_version 6.0 -%global zlib_version 1.3 + +# Temporary I presume as the json file suggests there should +# be eventually a release version of swift-format +%global swift_format_version 0.50700.1 Name: swift-lang @@ -64,66 +52,78 @@ Source11: https://github.com/apple/llvm-project/archive/swift-%{swift_vers Source12: https://github.com/apple/swift-tools-support-core/archive/swift-%{swift_version}.tar.gz#/swift-tools-support-core.tar.gz Source13: https://github.com/apple/swift-argument-parser/archive/%{swift_argument_parser_version}.tar.gz#/swift-argument-parser.tar.gz Source14: https://github.com/apple/swift-driver/archive/swift-%{swift_version}.tar.gz#/swift-driver.tar.gz -Source15: https://github.com/apple/swift-syntax/archive/swift-%{swift_version}.zip#/swift-syntax.tar.gz -Source16: https://github.com/jpsim/Yams/archive/%{yams_version}.tar.gz#/yams.tar.gz -Source17: https://github.com/apple/swift-crypto/archive/refs/tags/%{swift_crypto_version}.tar.gz#/swift-crypto.tar.gz -Source18: https://github.com/ninja-build/ninja/archive/refs/tags/v%{ninja_version}.tar.gz#/ninja.tar.gz -Source19: https://github.com/KitWare/CMake/archive/refs/tags/v%{cmake_version}.tar.gz#/cmake.tar.gz -Source20: https://github.com/apple/swift-atomics/archive/%{swift_atomics_version}.tar.gz#/swift-atomics.tar.gz -Source21: https://github.com/apple/swift-stress-tester/archive/swift-%{swift_version}.tar.gz#/swift-stress-tester.tar.gz -Source22: https://github.com/apple/swift-docc/archive/swift-%{swift_version}.tar.gz#/swift-docc.tar.gz -Source23: https://github.com/apple/swift-docc-render-artifact/archive/swift-%{swift_version}.tar.gz#/swift-docc-render-artifact.tar.gz -Source24: https://github.com/apple/swift-docc-symbolkit/archive/swift-%{swift_version}.tar.gz#/swift-docc-symbolkit.tar.gz -Source25: https://github.com/apple/swift-collections/archive/%{swift_collections_version}.tar.gz#/swift-collections.tar.gz -Source26: https://github.com/apple/swift-numerics/archive/%{swift_numerics_version}.tar.gz#/swift-numerics.tar.gz -Source27: https://github.com/apple/swift-system/archive/%{swift_system_version}.tar.gz#/swift-system.tar.gz -Source28: https://github.com/apple/swift-nio/archive/%{swift_nio_version}.tar.gz#/swift-nio.tar.gz -Source29: https://github.com/apple/swift-nio-ssl/archive/%{swift_nio_ssl_version}.tar.gz#/swift-nio-ssl.tar.gz -Source30: https://github.com/apple/swift-format/archive/refs/heads/release/%{swift_format_version}.zip#/swift-format.zip -Source31: https://github.com/apple/swift-lmdb/archive/swift-%{swift_version}.tar.gz#/swift-lmdb.tar.gz -Source32: https://github.com/apple/swift-markdown/archive/swift-%{swift_version}.tar.gz#/swift-markdown.tar.gz -Source33: https://github.com/apple/swift-experimental-string-processing/archive/swift-%{swift_version}.tar.gz#/swift-experimental-string-processing.tar.gz -Source34: https://github.com/apple/swift-certificates/archive/%{swift_certificates_version}.tar.gz#/swift-certificates.tar.gz -Source35: https://github.com/apple/swift-asn1/archive/%{swift_asn1_version}.tar.gz#/swift-asn1.tar.gz -Source36: https://github.com/unicode-org/icu/archive/refs/heads/maint/maint-%{icu_version}.zip#/icu.zip -Source37: https://github.com/swiftwasm/WasmKit/archive/refs/tags/%{wasmkit_version}.tar.gz#/wasm.tar.gz -Source38: https://github.com/WebAssembly/wasi-libc/archive/refs/tags/wasi-sdk-%{wasi_version}.tar.gz#/wasi-sdk.tar.gz -Source39: https://github.com/apple/swift-llvm-bindings/archive/refs/heads/swift/release/%{swift_llvm_bindings_version}.zip#/swift-llvm-bindings.zip -Source40: https://github.com/apple/swift-foundation-icu/archive/refs/heads/release/%{swift_foundation_icu_version}.zip#/swift-foundation-icu.zip -Source41: https://github.com/apple/swift-foundation/archive/refs/heads/release/%{swift_foundation_version}.zip#/swift-foundation.zip -Source42: https://github.com/apple/swift-testing/archive/refs/tags/swift-%{swift_version}.tar.gz#/swift-testing.tar.gz -Source43: https://github.com/madler/zlib/releases/download/v%{zlib_version}/zlib13.zip -Source44: swiftlang.conf +Source15: https://github.com/unicode-org/icu/archive/release-%{icu_version}.tar.gz#/icu.tar.gz +Source16: https://github.com/apple/swift-syntax/archive/swift-%{swift_version}.zip#/swift-syntax.tar.gz +Source17: https://github.com/jpsim/Yams/archive/%{yams_version}.tar.gz#/yams.tar.gz +Source18: https://github.com/apple/swift-crypto/archive/refs/tags/%{swift_crypto_version}.tar.gz#/swift-crypto.tar.gz +Source19: https://github.com/ninja-build/ninja/archive/refs/tags/v%{ninja_version}.tar.gz#/ninja.tar.gz +Source20: https://github.com/KitWare/CMake/archive/refs/tags/v%{cmake_version}.tar.gz#/cmake.tar.gz +Source21: https://github.com/apple/swift-atomics/archive/%{swift_atomics_version}.tar.gz#/swift-atomics.tar.gz +Source22: https://github.com/apple/swift-stress-tester/archive/swift-%{swift_version}.tar.gz#/swift-stress-tester.tar.gz +Source23: https://github.com/apple/swift-docc/archive/swift-%{swift_version}.tar.gz#/swift-docc.tar.gz +Source24: https://github.com/apple/swift-docc-render-artifact/archive/swift-%{swift_version}.tar.gz#/swift-docc-render-artifact.tar.gz +Source25: https://github.com/apple/swift-docc-symbolkit/archive/swift-%{swift_version}.tar.gz#/swift-docc-symbolkit.tar.gz +Source26: https://github.com/apple/swift-collections/archive/%{swift_collections_version}.tar.gz#/swift-collections.tar.gz +Source27: https://github.com/apple/swift-numerics/archive/%{swift_numerics_version}.tar.gz#/swift-numerics.tar.gz +Source28: https://github.com/apple/swift-system/archive/%{swift_system_version}.tar.gz#/swift-system.tar.gz +Source29: https://github.com/apple/swift-nio/archive/%{swift_nio_version}.tar.gz#/swift-nio.tar.gz +Source30: https://github.com/apple/swift-nio-ssl/archive/%{swift_nio_ssl_version}.tar.gz#/swift-nio-ssl.tar.gz +%dnl Source31: https://github.com/apple/swift-format/archive/swift-%{swift_version}.tar.gz#/swift-format.tar.gz +Source31: https://github.com/apple/swift-format/archive/refs/tags/%{swift_format_version}.tar.gz#/swift-format.tar.gz +Source32: https://github.com/apple/swift-lmdb/archive/swift-%{swift_version}.tar.gz#/swift-lmdb.tar.gz +Source33: https://github.com/apple/swift-markdown/archive/swift-%{swift_version}.tar.gz#/swift-markdown.tar.gz +Source34: https://github.com/apple/swift-experimental-string-processing/archive/swift-%{swift_version}.tar.gz#/swift-experimental-string-processing.tar.gz +%dnl Source35: https://github.com/apple/swift-llvm-bindings/archive/swift-%{swift_version}.tar.gz#/swift-llvm-bindings.tar.gz -Patch1: need_pic.patch -Patch2: no_pipes.patch -Patch3: enable_lzma.patch -Patch4: resource_dir.patch -Patch5: have_strcat.patch -Patch6: latest_python.patch +Patch1: uintptr.patch +Patch2: enablelzma.patch +Patch3: fs.patch +Patch4: unusedvars.patch +Patch5: no-test.patch +Patch7: fclose_issues.patch +Patch8: new_glibc.patch +Patch9: no_pipes_58.patch +Patch10: cython_updates.patch +Patch11: latest_python.patch +Patch12: disable_warning.patch +Patch13: debug_build.patch +%ifarch aarch64 +BuildRequires: clang >= 15 +%else BuildRequires: clang +%endif BuildRequires: swig BuildRequires: rsync BuildRequires: python3 BuildRequires: python3-devel BuildRequires: python3-setuptools +BuildRequires: python3-distro +BuildRequires: libbsd-devel BuildRequires: libxml2-devel BuildRequires: sqlite-devel +BuildRequires: libdispatch-devel BuildRequires: libcurl-devel BuildRequires: libuuid-devel BuildRequires: libedit-devel +BuildRequires: libicu-devel BuildRequires: perl-podlators -BuildRequires: swiftlang -BuildRequires: lld +BuildRequires: python3-six +BuildRequires: binutils-devel +%if ! 0%{?el8} +BuildRequires: python-unversioned-command +%endif +BuildRequires: binutils-gold Requires: glibc-devel Requires: binutils-gold Requires: gcc +Requires: ncurses-devel +Requires: lldb ExclusiveArch: x86_64 aarch64 -Provides: swiftlang = %{version}-%{release} +Provides: swiftlang = %{version}-%{release} %description @@ -139,12 +139,11 @@ correct programs easier for the developer. %prep -%setup -q -c -n %{swift_source_location} -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 -a 14 -a 15 -a 16 -a 17 -a 18 -a 19 -a 20 -a 21 -a 22 -a 23 -a 24 -a 25 -a 26 -a 27 -a 28 -a 29 -a 30 -a 31 -a 32 -a 33 -a 34 -a 35 -a 36 -a 37 -a 38 -a 39 -a 40 -a 41 -a 42 -a 43 +%setup -q -c -n %{swift_source_location} -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 -a 14 -a 15 -a 16 -a 17 -a 18 -a 19 -a 20 -a 21 -a 22 -a 23 -a 24 -a 25 -a 26 -a 27 -a 28 -a 29 -a 30 -a 31 -a 32 -a 33 -a 34 # The Swift build script requires directories to be named # in a specific way so renaming the source directories is # necessary mv swift-cmark-swift-%{swift_version} cmark -mv swift-testing-swift-%{swift_version} swift-testing mv swift-corelibs-foundation-swift-%{swift_version} swift-corelibs-foundation mv swift-corelibs-libdispatch-swift-%{swift_version} swift-corelibs-libdispatch mv swift-corelibs-xctest-swift-%{swift_version} swift-corelibs-xctest @@ -171,19 +170,15 @@ mv swift-numerics-%{swift_numerics_version} swift-numerics mv swift-system-%{swift_system_version} swift-system mv swift-nio-%{swift_nio_version} swift-nio mv swift-nio-ssl-%{swift_nio_ssl_version} swift-nio-ssl -mv swift-format-release-%{swift_format_version} swift-format +%dnl mv swift-format-swift-%{swift_version} swift-format +mv swift-format-%{swift_format_version} swift-format mv swift-lmdb-swift-%{swift_version} swift-lmdb mv swift-markdown-swift-%{swift_version} swift-markdown mv swift-stress-tester-swift-%{swift_version} swift-stress-tester mv swift-experimental-string-processing-swift-%{swift_version} swift-experimental-string-processing -mv swift-certificates-%{swift_certificates_version} swift-certificates -mv swift-asn1-%{swift_asn1_version} swift-asn1 -mv swift-llvm-bindings-swift-release-%{swift_llvm_bindings_version} swift-llvm-bindings -mv swift-foundation-icu-release-%{swift_foundation_icu_version} swift-foundation-icu -mv swift-foundation-release-%{swift_foundation_version} swift-foundation # ICU -mv icu-maint-maint-%{icu_version} icu +mv icu-release-%{icu_version} icu # Yams mv Yams-%{yams_version} yams @@ -191,47 +186,59 @@ mv Yams-%{yams_version} yams # Ninja mv ninja-%{ninja_version} ninja -# WasmKit -mv WasmKit-%{wasmkit_version} wasmkit - -# zlib -mv zlib-%{zlib_version} zlib - # Fix python to python3 %py3_shebang_fix swift/utils/api_checker/swift-api-checker.py %py3_shebang_fix llvm-project/compiler-rt/lib/hwasan/scripts/hwasan_symbolize -# Enable PIC for cmark +# Fix for uinit_ptr not being declared implicitly %patch -P1 -p0 -# Pipes has been removed in Python +# Enable LZMA %patch -P2 -p0 -# Enable LZMA -%patch -P3 -p0 - -# https://github.com/swiftlang/swift/pull/74814 -pushd swift -%patch -P4 -p1 -popd - -# Weird (hopefully temp) situation of strlcpy and strncat -# not being found at the system level -# This does not work for EPEL9, so we need to make sure -# that this patch is _not_ applied when building for EPEL9 -%if ! 0%{?el9} +# Tests fail for some reason preventing the package from being built %patch -P5 -p0 + +# Issue with >= F39 not liking not having the file object +# explicitly forced in an fclose() +%patch -P7 -p0 + +# 39 and later, so this patch modifies the CMakeLists.txt file +# to add a check for them, along with a patch to the header +# file that if they are present, don't define the functions +# seperately. +%patch -P8 -p0 + +# For 41 and later, python pipes are no longer a thing +%patch -P9 -p0 +# For 41 and later, some additional old parts removed +%dnl %patch -P10 -p0 + +# Python 3.12 changes +%dnl %patch -P11 -p0 + +# Warning as error in EPEL 10 +%patch -P12 -p0 + +# Trying to troubleshoot compiler crash on aarch64 +%ifarch aarch64 +%patch -P13 -p0 %endif -# After Python 3.12 certain functions have been removed, -# which is in Fedora 41 -%if 0%{?fedora} >= 41 -%patch -P6 -p0 -%endif %build export VERBOSE=1 +# Specific for aarch64 architecture +%ifarch aarch64 +if [ ! -d $PWD/oldclang ] ; then + mkdir -p $PWD/oldclang + ln -s /usr/bin/clang-15 $PWD/oldclang/clang + ln -s /usr/bin/clang++-15 $PWD/oldclang/clang++ +fi +export PATH=$PWD/oldclang:$PATH +%endif + # Here we go! swift/utils/build-script --preset=buildbot_linux,no_test install_destdir=%{_builddir} installable_package=%{_builddir}/swift-%{version}-%{linux_version}.tar.gz @@ -247,11 +254,6 @@ mkdir -p %{buildroot}%{_mandir}/man1 cp %{_builddir}/usr/share/man/man1/swift.1 %{buildroot}%{_mandir}/man1/swift.1 mkdir -p %{buildroot}/usr/lib ln -fs %{_libexecdir}/swift/%{package_version}/lib/swift %{buildroot}/usr/lib/swift -mkdir -p %{buildroot}%{_libdir} -ln -fs %{_libexecdir}/swift/%{package_version}/lib/lib{IndexStore,sourcekitdInProc,swiftDemangle}.so* %{buildroot}%{_libdir}/ -mkdir -p %{buildroot}/%{_sysconfdir}/ld.so.conf.d/ -install -m 0644 %{SOURCE44} %{buildroot}/%{_sysconfdir}/ld.so.conf.d/swiftlang.conf - # This is to fix an issue with check-rpaths complaining about # how the Swift binaries use RPATH @@ -266,10 +268,6 @@ export QA_SKIP_RPATHS=1 %{_mandir}/man1/swift.1.gz %{_libexecdir}/swift/ %{_usr}/lib/swift -%{_libdir}/libIndexStore.so* -%{_libdir}/libsourcekitdInProc.so* -%{_libdir}/libswiftDemangle.so* -%{_sysconfdir}/ld.so.conf.d/swiftlang.conf %post -p /sbin/ldconfig @@ -277,30 +275,32 @@ export QA_SKIP_RPATHS=1 %changelog -* Wed Sep 25 2024 Ron Olson - 6.0.1-1 -- Updated to Swift 6.0.1-RELEASE - Resolves: rhbz#2313366 -* Mon Sep 16 2024 Ron Olson - 6.0-1 -- Updated to Swift 6.0-RELEASE -* Mon Aug 26 2024 Zephyr Lykos - 6.0-1 -- Export Swift development tool libraries to libdir -* Mon Jul 22 2024 Byoungchan Lee - 6.0-1 -- Minimize runtime/compile time dependencies -* Fri Jul 19 2024 Ron Olson - 6.0-1 -- Added file to add the Swift libraries to the ld.so.conf.d directory -* Sun Jun 30 2024 Ron Olson - 6.0-1 -- Patch from finagolfin - https://github.com/swiftlang/swift/pull/74814 -* Tue Apr 23 2024 Ron Olson - 6.0-1 -- First attempt at getting 6.0 working -* Mon Sep 18 2023 Ron Olson - 5.9-1 -- Updated to Swift 5.9-RELEASE - Resolves: rhbz#2239543 -* Fri Sep 15 2023 Ron Olson - 5.10-1 -- First working version of Swift 5.10 -* Wed Mar 29 2023 Ron Olson - 5.9-1 -- Cleanup and first attempt at getting 5.9 going though - 5.8 hasn't been released yet +* Tue Dec 17 2024 Ron Olson 5.8.1-6 +- Made 5.8.1 work for EPEL 10 as it is the last version of + Swift that could be built without another version of + Swift being present +* Fri Jun 21 2024 Ron Olson 5.8.1-5 +- Added another patch +* Thu Jun 20 2024 Ron Olson 5.8.1-4 +- Added patch to build without pipes on Rawhide and Fedora 41 +* Fri Feb 16 2024 Ron Olson 5.8.1-3 +- Added symlink for future versions of Swift +* Tue Aug 22 2023 Ron Olson 5.8.1-2 +- Added patch to work with glibc 2.38 + Resolves: rhbz#2226476 + +* Sat Jul 22 2023 Fedora Release Engineering - 5.8.1-1.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 13 2023 Python Maint - 5.8.1-1.1 +- Rebuilt for Python 3.12 + +* Fri Jun 02 2023 Ron Olson - 5.8.1-1 +- Updated to Swift 5.8.1-RELEASE + Resolves: rhbz#2211845 +* Fri Mar 31 2023 Ron Olson - 5.8-1 +- Updated to Swift 5.8-RELEASE + Resolves: rhbz#2183429 * Sat Jan 21 2023 Fedora Release Engineering - 5.7.2-1.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Tue Dec 27 2022 Ron Olson - 5.8-1 diff --git a/swiftlang.conf b/swiftlang.conf deleted file mode 100644 index d19930a..0000000 --- a/swiftlang.conf +++ /dev/null @@ -1 +0,0 @@ -/usr/lib/swift/linux diff --git a/uintptr.patch b/uintptr.patch new file mode 100644 index 0000000..8bfc97e --- /dev/null +++ b/uintptr.patch @@ -0,0 +1,10 @@ +--- llvm-project/llvm/include/llvm/Support/Signals.h.orig 2023-01-25 12:42:42.006799309 -0600 ++++ llvm-project/llvm/include/llvm/Support/Signals.h 2023-01-25 12:43:15.856946625 -0600 +@@ -15,6 +15,7 @@ + #define LLVM_SUPPORT_SIGNALS_H + + #include ++#include + + namespace llvm { + class StringRef; diff --git a/unusedvars.patch b/unusedvars.patch new file mode 100644 index 0000000..46e4bcf --- /dev/null +++ b/unusedvars.patch @@ -0,0 +1,14 @@ +--- swift-corelibs-libdispatch/src/shims/yield.c.orig 2022-09-16 12:04:16.691448773 -0500 ++++ swift-corelibs-libdispatch/src/shims/yield.c 2022-09-16 12:05:43.047145102 -0500 +@@ -25,6 +25,11 @@ + __DISPATCH_WAIT_FOR_ENQUEUER__(void **ptr) + { + int spins = 0; ++ int nothing = spins; ++ nothing = 23; ++ spins = nothing; ++ spins = 0; ++ + void *value; + while ((value = os_atomic_load(ptr, relaxed)) == NULL) { + _dispatch_preemption_yield(++spins);