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
55import Development.Shake.FilePath
66import Control.Monad
77import System.Directory ( copyFile )
8+ import System.Info ( os )
89
910import Version
1011import Print
@@ -74,9 +75,11 @@ cabalInstallHls versionNumber args = do
7475 let minorVerExe = " haskell-language-server-" ++ versionNumber <.> exe
7576 majorVerExe = " haskell-language-server-" ++ dropExtension versionNumber <.> exe
7677
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)
8083
8184 printLine $ " Copied executables "
8285 ++ (" haskell-language-server-wrapper" <.> exe) ++ " , "
@@ -141,4 +144,3 @@ getVerbosityArg v = "-v" ++ cabalVerbosity
141144 Chatty -> " 2"
142145#endif
143146 Diagnostic -> " 3"
144-
Original file line number Diff line number Diff line change @@ -6,6 +6,7 @@ import Development.Shake.FilePath
66import Control.Monad
77import System.Directory ( copyFile )
88-- import System.FilePath ( (</>) )
9+ import System.Info ( os )
910import Version
1011import Print
1112
@@ -32,11 +33,13 @@ stackInstallHls mbVersionNumber args = do
3233
3334 localBinDir <- getLocalBin args
3435 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)
4043
4144getGhcVersionOfCfgFile :: String -> [String ] -> Action VersionNumber
4245getGhcVersionOfCfgFile stackFile args = do
You can’t perform that action at this time.
0 commit comments