diff options
author | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
---|---|---|
committer | Mx Kookie <kookie@spacekookie.de> | 2020-10-31 19:35:09 +0100 |
commit | c4625b175f8200f643fd6e11010932ea44c78433 (patch) | |
tree | bce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/development/libraries/elf-header | |
parent | 49f735974dd103039ddc4cb576bb76555164a9e7 (diff) | |
parent | d661aa56a8843e991261510c1bb28fdc2f6975ae (diff) |
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie
git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7
git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/libraries/elf-header')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/development/libraries/elf-header/default.nix | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/libraries/elf-header/default.nix b/infra/libkookie/nixpkgs/pkgs/development/libraries/elf-header/default.nix new file mode 100644 index 000000000000..c1764e83c303 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/development/libraries/elf-header/default.nix @@ -0,0 +1,44 @@ +{ stdenvNoCC, lib, glibc, musl }: + +let + libc = + if stdenvNoCC.targetPlatform.isMusl + then musl + else glibc; + headerPath = + if stdenvNoCC.targetPlatform.isMusl + then "musl-${libc.version}/include/elf.h" + else "glibc-${libc.version}/elf/elf.h"; +in + +stdenvNoCC.mkDerivation { + pname = "elf-header"; + inherit (libc) version; + + src = null; + + dontUnpack = true; + + dontBuild = true; + + installPhase = '' + mkdir -p "$out/include"; + tar -xf \ + ${lib.escapeShellArg libc.src} \ + ${lib.escapeShellArg headerPath} \ + --to-stdout \ + | sed -e '/features\.h/d' \ + > "$out/include/elf.h" + ''; + + meta = libc.meta // { + outputsToInstall = [ "out" ]; + description = "The datastructures of ELF according to the target platform's libc"; + longDescription = '' + The Executable and Linkable Format (ELF, formerly named Extensible Linking + Format), is usually defined in a header like this. + ''; + platforms = lib.platforms.all; + maintainers = [ lib.maintainers.ericson2314 ]; + }; +} |