-
Notifications
You must be signed in to change notification settings - Fork 85
/
Copy pathmsvs-promote-path
executable file
·47 lines (41 loc) · 1.8 KB
/
msvs-promote-path
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/usr/bin/env bash
#**************************************************************************
#* *
#* OCaml *
#* *
#* David Allsopp, MetaStack Solutions Ltd. *
#* Samuel Hym, Tarides *
#* *
#* Copyright 2015 MetaStack Solutions Ltd. *
#* *
#* All rights reserved. This file is distributed under the terms of *
#* the GNU Lesser General Public License version 2.1, with the *
#* special exception on linking described in the file LICENSE. *
#* *
#**************************************************************************
# Ensure that the Microsoft Linker isn't being shadowed by /usr/bin/link
# We expect the Microsoft Linker to be in the same directory as the C compiler
if ! clpath="$(command -v cl)" ; then
echo "The Microsoft C compiler was not found in any of the PATH entries!">&2
exit 1
fi
clpath="${clpath%/*}"
if ! linkpath="$(command -v link)" ; then
echo "The Microsoft Linker was not found in any of the PATH entries!">&2
exit 1
fi
if [ "${linkpath%/*}" = "$clpath" ]; then
echo "link already refers to the Microsoft Linker">&2
exit 0
fi
NEWPATH="$clpath"
IFS=:
for i in $PATH
do
if [[ $i != $clpath ]]; then
NEWPATH="$NEWPATH:$i"
fi
done
unset IFS
echo "$clpath moved to the front of \$PATH">&2
echo "export PATH='"${NEWPATH//\'/\'\"\'\"\'}"'"