nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib, stdenv, llvm_meta, version, fetch, cmake, fetchpatch
2, enableShared ? !stdenv.hostPlatform.isStatic
3}:
4
5stdenv.mkDerivation rec {
6 pname = "libunwind";
7 inherit version;
8
9 src = fetch pname "1wb02ha3gl6p0a321hwpll74pz5qvjr11xmjqx62g288f1m10njk";
10
11 patches = [
12 ./gnu-install-dirs.patch
13 ];
14
15 outputs = [ "out" "dev" ];
16
17 nativeBuildInputs = [ cmake ];
18
19 cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
20
21 meta = llvm_meta // {
22 # Details: https://github.com/llvm/llvm-project/blob/main/libunwind/docs/index.rst
23 homepage = "https://clang.llvm.org/docs/Toolchain.html#unwind-library";
24 description = "LLVM's unwinder library";
25 longDescription = ''
26 The unwind library provides a family of _Unwind_* functions implementing
27 the language-neutral stack unwinding portion of the Itanium C++ ABI (Level
28 I). It is a dependency of the C++ ABI library, and sometimes is a
29 dependency of other runtimes.
30 '';
31 };
32}