diff options
Diffstat (limited to 'pkgs/os-specific/darwin/apple-source-releases')
-rw-r--r-- | pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix index 46e9e592ddc6..e7aa47bdb6b1 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix @@ -12,5 +12,14 @@ appleDerivation { cp -r dispatch/*.h $out/include/dispatch cp -r os/object*.h $out/include/os + + # gcc compatability. Source: https://stackoverflow.com/a/28014302/3714556 + substituteInPlace $out/include/dispatch/object.h \ + --replace 'typedef void (^dispatch_block_t)(void);' \ + '#ifdef __clang__ + typedef void (^dispatch_block_t)(void); + #else + typedef void* dispatch_block_t; + #endif' ''; } |