tree-sitter: make shared/static libraries configurable

This commit is contained in:
Nick Hu 2020-11-09 18:41:20 +00:00
parent 562eaafd36
commit aea7f1b540
No known key found for this signature in database
GPG key ID: 9E35DDA3DF631330
2 changed files with 10 additions and 2 deletions

View file

@ -3,6 +3,8 @@
, writeShellScript, runCommand, which
, rustPlatform, jq, nix-prefetch-git, xe, curl, emscripten
, callPackage
, enableShared ? true
, enableStatic ? false
}:
# TODO: move to carnix or https://github.com/kolloch/crate2nix
@ -69,8 +71,9 @@ in rustPlatform.buildRustPackage {
'';
postInstall = ''
export PREFIX=$out
make install
PREFIX=$out make install
${lib.optionalString (!enableShared) "rm $out/lib/*.so{,.*}"}
${lib.optionalString (!enableStatic) "rm $out/lib/*.a"}
'';
# test result: FAILED. 120 passed; 13 failed; 0 ignored; 0 measured; 0 filtered out

View file

@ -286,6 +286,11 @@ in {
libexecinfo = super.libexecinfo.override { enableShared = false; };
tree-sitter = super.tree-sitter.override {
enableShared = false;
enableStatic = true;
};
xorg = super.xorg.overrideScope' (xorgself: xorgsuper: {
libX11 = xorgsuper.libX11.overrideAttrs (attrs: {
depsBuildBuild = attrs.depsBuildBuild ++ [ (self.buildPackages.stdenv.cc.libc.static or null) ];