diff --git a/pkgs/development/compilers/llvm/git/libcxx/0001-darwin-10.12-mbstate_t-fix.patch b/pkgs/development/compilers/llvm/git/libcxx/0001-darwin-10.12-mbstate_t-fix.patch new file mode 100644 index 000000000000..0a2e8db07391 --- /dev/null +++ b/pkgs/development/compilers/llvm/git/libcxx/0001-darwin-10.12-mbstate_t-fix.patch @@ -0,0 +1,31 @@ +From 9c1cb26c1dd3f92d1c1177e548107d2cd3c5e616 Mon Sep 17 00:00:00 2001 +From: annalee <150648636+a-n-n-a-l-e-e@users.noreply.github.com> +Date: Fri, 23 Feb 2024 22:58:58 +0000 +Subject: [PATCH] darwin 10.12 mbstate_t fix + +https://github.com/llvm/llvm-project/issues/64226 + +removes space from +https://github.com/macports/macports-ports/raw/acd8acb171f1658596ed1cf25da48d5b932e2d19/lang/llvm-17/files/0042-mbstate_t-not-defined.patch +so it applies cleanly +--- + include/__mbstate_t.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/include/__mbstate_t.h b/include/__mbstate_t.h +index bfa6d61..5f51112 100644 +--- a/include/__mbstate_t.h ++++ b/include/__mbstate_t.h +@@ -42,6 +42,9 @@ + #elif __has_include() + # include // works on most Unixes + #elif __has_include() ++# if __has_include() ++# include ++# endif + # include // works on Darwin + #elif !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS) && __has_include_next() + # include_next // fall back to the C standard provider of mbstate_t +-- +2.43.0 + diff --git a/pkgs/development/compilers/llvm/git/libcxx/default.nix b/pkgs/development/compilers/llvm/git/libcxx/default.nix index 9b37a246d920..11f4c6fe5fd1 100644 --- a/pkgs/development/compilers/llvm/git/libcxx/default.nix +++ b/pkgs/development/compilers/llvm/git/libcxx/default.nix @@ -45,6 +45,11 @@ stdenv.mkDerivation rec { chmod -R u+w . ''; + patches = lib.optionals (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13") [ + # https://github.com/llvm/llvm-project/issues/64226 + ./0001-darwin-10.12-mbstate_t-fix.patch + ]; + postPatch = '' cd ../runtimes ''; diff --git a/pkgs/development/compilers/llvm/git/libcxxabi/default.nix b/pkgs/development/compilers/llvm/git/libcxxabi/default.nix index f2811fa08bb6..8e1979654325 100644 --- a/pkgs/development/compilers/llvm/git/libcxxabi/default.nix +++ b/pkgs/development/compilers/llvm/git/libcxxabi/default.nix @@ -126,8 +126,5 @@ stdenv.mkDerivation rec { # the UIUC License (a BSD-like license)": license = with lib.licenses; [ mit ncsa ]; maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ]; - # Broken until https://github.com/llvm/llvm-project/issues/64226 is resolved - # We should check if the version is not 10.13 but that is currently broken. - broken = stdenv.isDarwin && stdenv.isx86_64; }; }