diff --git a/mingw-w64-clang/0305-use-TerminateProcess-instead-of-exit.patch b/mingw-w64-clang/0305-use-TerminateProcess-instead-of-exit.patch index 4a42c7ac6a..efc5da1733 100644 --- a/mingw-w64-clang/0305-use-TerminateProcess-instead-of-exit.patch +++ b/mingw-w64-clang/0305-use-TerminateProcess-instead-of-exit.patch @@ -1,70 +1,3 @@ ---- lld/MinGW/Driver.cpp.orig 2020-11-02 21:43:24.117381600 -0800 -+++ lld/MinGW/Driver.cpp 2020-11-02 21:43:31.351722700 -0800 -@@ -404,5 +404,5 @@ - std::vector vec; - for (const std::string &s : linkArgs) - vec.push_back(s.c_str()); -- return coff::link(vec, true, stdoutOS, stderrOS); -+ return coff::link(vec, canExitEarly, stdoutOS, stderrOS); - } ---- lld/tools/lld/lld.cpp.orig 2020-11-02 21:43:50.211104200 -0800 -+++ lld/tools/lld/lld.cpp 2020-11-02 23:00:25.086102300 -0800 -@@ -26,6 +26,7 @@ - //===----------------------------------------------------------------------===// - - #include "lld/Common/Driver.h" -+#include "lld/Common/ErrorHandler.h" - #include "lld/Common/Memory.h" - #include "llvm/ADT/STLExtras.h" - #include "llvm/ADT/SmallVector.h" -@@ -54,7 +55,7 @@ - - LLVM_ATTRIBUTE_NORETURN static void die(const Twine &s) { - llvm::errs() << s << "\n"; -- exit(1); -+ exitLld(1); - } - - static Flavor getFlavor(StringRef s) { -@@ -147,22 +148,32 @@ - InitLLVM x(argc, argv); - - std::vector args(argv, argv + argc); -+ int ret = 1; - switch (parseFlavor(args)) { - case Gnu: - if (isPETarget(args)) -- return !mingw::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -- return !elf::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ ret = !mingw::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ else -+ ret = !elf::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ break; - case WinLink: -- return !coff::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ ret = !coff::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ break; - case Darwin: -- return !mach_o::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ ret = !mach_o::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ break; - case DarwinNew: -- return !macho::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ ret = !macho::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ break; - case Wasm: -- return !wasm::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ ret = !lld::wasm::link(args, canExitEarly(), llvm::outs(), llvm::errs()); -+ break; - default: - die("lld is a generic driver.\n" - "Invoke ld.lld (Unix), ld64.lld (macOS), lld-link (Windows), wasm-ld" - " (WebAssembly) instead"); - } -+ -+ exitLld(ret); -+ return ret; - } --- lld/Common/ErrorHandler.cpp.orig 2020-11-02 22:36:38.711080500 -0800 +++ lld/Common/ErrorHandler.cpp 2020-11-02 22:36:45.429829700 -0800 @@ -22,6 +22,10 @@ diff --git a/mingw-w64-clang/PKGBUILD b/mingw-w64-clang/PKGBUILD index d7a832e2dc..0680082191 100644 --- a/mingw-w64-clang/PKGBUILD +++ b/mingw-w64-clang/PKGBUILD @@ -144,7 +144,7 @@ sha256sums=('913f68c898dfb4a03b397c5e11c6a2f39d0f22ed7665c9cefa87a34423a72469' 'c74c313e442a5b8fed7c6372ac8ff8f3598c9e33db1b520f1297949e18042e55' '2e1705274dfc55466cc8977e61d569a685e18ce07895cbec2ccf3b848eafd8ee' '778e0db0a5b0657ab05e2a81d83241347a4a41af2b0f9903422f651fa58e8d40' - '8094186e0a9359cafd0a25d8543ecb2cac5b8941885e8578cc3027e67a74fabc' + '9482cde0ae847c4435ec2294805bdaecac3f6b9eea30c89bd7fca15103cf2728' 'bed7ae642486a8fd0db5afb0b9afcd8a87605de318ad891bf4c9378a2eb09dc2' 'bc394e597f8939b6f6630bd88c990f951738aaadacded2f3be71c658e9608fe7') validpgpkeys=('B6C8F98282B944E3B0D5C2530FC3042E345AD05D' # Hans Wennborg, Google.