@@ -1236,6 +1236,17 @@ ensure_node_for_ghcjs() {
12361236 fi
12371237}
12381238
1239+ set_ghc_binary_name () {
1240+ COMPILER_BASE_NAME=" $( basename " $COMPILER_EXE_PATH_ORIG " ) "
1241+ compiler_in_path=" $( which_cmd " $COMPILER_BASE_NAME " ) "
1242+ if test " $compiler_in_path " = " $COMPILER_EXE_PATH_ORIG "
1243+ then
1244+ COMPILER_EXE_PATH=" $COMPILER_BASE_NAME "
1245+ else
1246+ COMPILER_EXE_PATH=" $COMPILER_EXE_PATH_ORIG "
1247+ fi
1248+ }
1249+
12391250find_compiler () {
12401251 local found
12411252 local compiler_path
@@ -1304,14 +1315,8 @@ find_compiler() {
13041315 compiler_path=$( $STACKCMD path --compiler-exe) || exit 1
13051316 fi
13061317
1307- COMPILER_BASE_NAME=" $( basename " $compiler_path " ) "
1308- compiler_in_path=" $( which_cmd " $COMPILER_BASE_NAME " ) "
1309- if test " $compiler_in_path " = " $compiler_path "
1310- then
1311- COMPILER_EXE_PATH=" $COMPILER_BASE_NAME "
1312- else
1313- COMPILER_EXE_PATH=" $compiler_path "
1314- fi
1318+ COMPILER_EXE_PATH_ORIG=" $compiler_path "
1319+ set_ghc_binary_name
13151320}
13161321
13171322run_prefetch () {
@@ -1379,7 +1384,8 @@ ensure_ghc() {
13791384
13801385 if test " $REQUIRED_COMPILER " = ghc -a -n " $GHC_PATH "
13811386 then
1382- COMPILER_EXE_PATH=" $GHC_PATH "
1387+ COMPILER_EXE_PATH_ORIG=" $GHC_PATH "
1388+ set_ghc_binary_name
13831389 else
13841390 find_compiler
13851391 fi
@@ -1439,6 +1445,17 @@ stack_install_tool () {
14391445 cd ../..
14401446}
14411447
1448+ set_cabal_binary_name () {
1449+ CABAL_BASE_NAME=" $( basename " $CABAL_EXE_PATH " ) "
1450+ cabal_in_path=" $( which_cmd " $CABAL_BASE_NAME " ) "
1451+ if test " $cabal_in_path " = " $CABAL_EXE_PATH "
1452+ then
1453+ CABAL_BINARY_NAME=" $CABAL_BASE_NAME "
1454+ else
1455+ CABAL_BINARY_NAME=" $CABAL_EXE_PATH "
1456+ fi
1457+ }
1458+
14421459find_cabal () {
14431460 CABAL_BINARY_NAME=cabal
14441461
@@ -1472,15 +1489,8 @@ find_cabal () {
14721489 fi
14731490 fi
14741491 fi
1475-
1476- CABAL_BASE_NAME=" $( basename " $CABAL_EXE_PATH " ) "
1477- cabal_in_path=" $( which_cmd " $CABAL_BASE_NAME " ) "
1478- if test " $cabal_in_path " = " $CABAL_EXE_PATH "
1479- then
1480- CABAL_BINARY_NAME=" $CABAL_BASE_NAME "
1481- else
1482- CABAL_BINARY_NAME=" $CABAL_EXE_PATH "
1483- fi
1492+ # depends on CABAL_EXE_PATH
1493+ set_cabal_binary_name
14841494}
14851495
14861496show_cabal () {
@@ -1522,11 +1532,9 @@ ensure_cabal() {
15221532
15231533 if test -n " $CABAL_PATH "
15241534 then
1525- cabal_dir=$( dirname " $CABAL_PATH " )
1526- echo " Adding " $cabal_dir " to PATH"
1527- # Add at the end so that it does not add any ghc at the head.
1528- # We add ghc path at the head.
1529- PATH=" $PATH :$cabal_dir "
1535+ CABAL_EXE_PATH=" $CABAL_PATH "
1536+ # depends on CABAL_EXE_PATH
1537+ set_cabal_binary_name
15301538 else
15311539 find_cabal
15321540 fi
0 commit comments