File tree Expand file tree Collapse file tree 2 files changed +14
-9
lines changed Expand file tree Collapse file tree 2 files changed +14
-9
lines changed Original file line number Diff line number Diff line change @@ -5,6 +5,7 @@ import Development.Shake
5
5
import Development.Shake.FilePath
6
6
import Control.Monad
7
7
import System.Directory ( copyFile )
8
+ import System.Info ( os )
8
9
9
10
import Version
10
11
import Print
@@ -74,9 +75,11 @@ cabalInstallHls versionNumber args = do
74
75
let minorVerExe = " haskell-language-server-" ++ versionNumber <.> exe
75
76
majorVerExe = " haskell-language-server-" ++ dropExtension versionNumber <.> exe
76
77
77
- liftIO $ do
78
- copyFile (localBin </> " haskell-language-server" <.> exe) (localBin </> minorVerExe)
79
- copyFile (localBin </> " haskell-language-server" <.> exe) (localBin </> majorVerExe)
78
+ let copyCmd old new = if os == " mingw32"
79
+ then liftIO $ copyFile old new
80
+ else command [] " ln" [" -f" , old, new]
81
+ copyCmd (localBin </> " haskell-language-server" <.> exe) (localBin </> minorVerExe)
82
+ copyCmd (localBin </> " haskell-language-server" <.> exe) (localBin </> majorVerExe)
80
83
81
84
printLine $ " Copied executables "
82
85
++ (" haskell-language-server-wrapper" <.> exe) ++ " , "
@@ -141,4 +144,3 @@ getVerbosityArg v = "-v" ++ cabalVerbosity
141
144
Chatty -> " 2"
142
145
#endif
143
146
Diagnostic -> " 3"
144
-
Original file line number Diff line number Diff line change @@ -6,6 +6,7 @@ import Development.Shake.FilePath
6
6
import Control.Monad
7
7
import System.Directory ( copyFile )
8
8
-- import System.FilePath ( (</>) )
9
+ import System.Info ( os )
9
10
import Version
10
11
import Print
11
12
@@ -32,11 +33,13 @@ stackInstallHls mbVersionNumber args = do
32
33
33
34
localBinDir <- getLocalBin args
34
35
let hls = " haskell-language-server" <.> exe
35
- liftIO $ do
36
- copyFile (localBinDir </> hls)
37
- (localBinDir </> " haskell-language-server-" ++ versionNumber <.> exe)
38
- copyFile (localBinDir </> hls)
39
- (localBinDir </> " haskell-language-server-" ++ dropExtension versionNumber <.> exe)
36
+ copyCmd old new = if os == " mingw32"
37
+ then liftIO $ copyFile old new
38
+ else command [] " ln" [" -f" , old, new]
39
+ copyCmd (localBinDir </> hls)
40
+ (localBinDir </> " haskell-language-server-" ++ versionNumber <.> exe)
41
+ copyCmd (localBinDir </> hls)
42
+ (localBinDir </> " haskell-language-server-" ++ dropExtension versionNumber <.> exe)
40
43
41
44
getGhcVersionOfCfgFile :: String -> [String ] -> Action VersionNumber
42
45
getGhcVersionOfCfgFile stackFile args = do
You can’t perform that action at this time.
0 commit comments