Merge pull request #158669 from sternenseemann/hls-dynamic-wrapper
haskell-language-server: make linking configureable in wrapper
This commit is contained in:
commit
562ad4ad32
@ -2,6 +2,7 @@
|
|||||||
, stdenv
|
, stdenv
|
||||||
, supportedGhcVersions ? [ "884" "8107" "902" ]
|
, supportedGhcVersions ? [ "884" "8107" "902" ]
|
||||||
++ lib.optionals (!stdenv.hostPlatform.isAarch64) [ "921" ]
|
++ lib.optionals (!stdenv.hostPlatform.isAarch64) [ "921" ]
|
||||||
|
, dynamic ? false
|
||||||
, haskellPackages
|
, haskellPackages
|
||||||
, haskell
|
, haskell
|
||||||
}:
|
}:
|
||||||
@ -13,19 +14,23 @@
|
|||||||
# for example. Read more about this in the haskell-language-server section of the nixpkgs manual.
|
# for example. Read more about this in the haskell-language-server section of the nixpkgs manual.
|
||||||
#
|
#
|
||||||
let
|
let
|
||||||
inherit (lib) concatStringsSep concatMapStringsSep take splitString;
|
inherit (lib) concatStringsSep concatMapStringsSep take splitString pipe optionals;
|
||||||
|
inherit (haskell.lib.compose) justStaticExecutables overrideCabal enableCabalFlag disableCabalFlag;
|
||||||
getPackages = version: haskell.packages."ghc${version}";
|
getPackages = version: haskell.packages."ghc${version}";
|
||||||
tunedHls = hsPkgs:
|
tunedHls = hsPkgs:
|
||||||
haskell.lib.compose.justStaticExecutables
|
lib.pipe hsPkgs.haskell-language-server ([
|
||||||
(haskell.lib.compose.overrideCabal (old: {
|
(haskell.lib.compose.overrideCabal (old: {
|
||||||
postInstall = ''
|
enableSharedExecutables = dynamic;
|
||||||
remove-references-to -t ${hsPkgs.ghc} $out/bin/haskell-language-server
|
${if !dynamic then "postInstall" else null} = ''
|
||||||
remove-references-to -t ${hsPkgs.shake.data} $out/bin/haskell-language-server
|
${old.postInstall or ""}
|
||||||
remove-references-to -t ${hsPkgs.js-jquery.data} $out/bin/haskell-language-server
|
|
||||||
remove-references-to -t ${hsPkgs.js-dgtable.data} $out/bin/haskell-language-server
|
remove-references-to -t ${hsPkgs.ghc} $out/bin/haskell-language-server
|
||||||
remove-references-to -t ${hsPkgs.js-flot.data} $out/bin/haskell-language-server
|
'';
|
||||||
'';
|
}))
|
||||||
}) hsPkgs.haskell-language-server);
|
((if dynamic then enableCabalFlag else disableCabalFlag) "dynamic")
|
||||||
|
] ++ optionals (!dynamic) [
|
||||||
|
justStaticExecutables
|
||||||
|
]);
|
||||||
targets = version:
|
targets = version:
|
||||||
let packages = getPackages version;
|
let packages = getPackages version;
|
||||||
in [
|
in [
|
||||||
|
Loading…
Reference in New Issue
Block a user