diff options
author | AndersonTorres <torres.anderson.85@protonmail.com> | 2022-02-26 21:04:25 -0300 |
---|---|---|
committer | AndersonTorres <torres.anderson.85@protonmail.com> | 2022-02-26 21:04:25 -0300 |
commit | ed2b1b4b909538716abb6378971ba75fae65b7d2 (patch) | |
tree | 25c9f8f505f3ad7d3955c556a50ef6c111e7c369 /pkgs/applications/editors/vscode/extensions/cpptools/missing_elf_deps.sh | |
parent | f68dbdc7c39faa5f685e34b10da0b373ad6a7c22 (diff) | |
parent | 2970b27faf15840714feba50186e7e02d945569f (diff) | |
download | nixpkgs-ed2b1b4b909538716abb6378971ba75fae65b7d2.tar nixpkgs-ed2b1b4b909538716abb6378971ba75fae65b7d2.tar.gz nixpkgs-ed2b1b4b909538716abb6378971ba75fae65b7d2.tar.bz2 nixpkgs-ed2b1b4b909538716abb6378971ba75fae65b7d2.tar.lz nixpkgs-ed2b1b4b909538716abb6378971ba75fae65b7d2.tar.xz nixpkgs-ed2b1b4b909538716abb6378971ba75fae65b7d2.tar.zst nixpkgs-ed2b1b4b909538716abb6378971ba75fae65b7d2.zip |
Merge branch 'master' into staging-next
Diffstat (limited to 'pkgs/applications/editors/vscode/extensions/cpptools/missing_elf_deps.sh')
-rwxr-xr-x | pkgs/applications/editors/vscode/extensions/cpptools/missing_elf_deps.sh | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/pkgs/applications/editors/vscode/extensions/cpptools/missing_elf_deps.sh b/pkgs/applications/editors/vscode/extensions/cpptools/missing_elf_deps.sh new file mode 100755 index 00000000000..f5eb08d78a5 --- /dev/null +++ b/pkgs/applications/editors/vscode/extensions/cpptools/missing_elf_deps.sh @@ -0,0 +1,52 @@ +#!/usr/bin/env nix-shell +#! nix-shell -p coreutils -i bash + +scriptDir=$(cd "`dirname "$0"`"; pwd) +echo "scriptDir='$scriptDir'" + +function get_pkg_out() { + local pkg="$1" + local suffix="${2:-}" + local nixExp="with (import <nixpkgs> {}); ${pkg}" + echo "$(nix-build -E "$nixExp" --no-out-link)${suffix}" +} + +interpreter="$(get_pkg_out "stdenv.glibc" "/lib/ld-linux-x86-64.so.2")" +echo "interpreter='$interpreter'" + +# For clangformat dep on 'libtinfo.so.5'. +ncursesLibDir="$(get_pkg_out "ncurses5.out" "/lib")" +echo "ncursesLibDir='$ncursesLibDir'" + +# For clanformat dep on 'libstdc++.so.6'. +stdcppLibDir="$(get_pkg_out "stdenv.cc.cc.lib" "/lib")" +echo "stdcppLibDir='$stdcppLibDir'" + +# For clangformat dep on 'libz.so.1'. +zlibLibDir="$(get_pkg_out "zlib.out" "/lib")" +echo "zlibLibDir='$zlibLibDir'" + +function patchelf_mono() { + local exe="$1" + patchelf --set-interpreter "$interpreter" "$exe" +} + +function patchelf_clangformat() { + local exe="$1" + patchelf --set-interpreter "$interpreter" "$exe" + local rpath="$ncursesLibDir:$stdcppLibDir:$zlibLibDir" + patchelf --set-rpath "$rpath" "$exe" +} + +function print_nix_version_clangtools() { + nixClangToolsBin="$(get_pkg_out "clang-tools" "/bin")" + echo "nixClangToolsBin='$nixClangToolsBin'" + $nixClangToolsBin/clang-format --version +} + +function print_nix_version_mono() { + nixMonoBin="$(get_pkg_out "mono" "/bin")" + echo "nixMonoBin='$nixMonoBin'" + $nixMonoBin/mono --version +} + |