summaryrefslogtreecommitdiff
path: root/deps/npm/bin/npx
blob: 3516c8c415dba217b81017fb77d83df31e91405f (plain)
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
#!/bin/sh
(set -o igncr) 2>/dev/null && set -o igncr; # cygwin encoding fix

basedir=`dirname "$0"`

case `uname` in
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac

NODE_EXE="$basedir/node.exe"
if [ -x "$NODE_EXE" ] && [ -f "/bin/wslpath" ]; then # run the corresponding command prompt when Node for Windows is executed within WSL
  cmd.exe /c `wslpath -w "$basedir/npx.cmd"` "$@"
  exit $?
fi
if ! [ -x "$NODE_EXE" ]; then
  NODE_EXE=node
fi

NPM_CLI_JS="$basedir/node_modules/npm/bin/npm-cli.js"
NPX_CLI_JS="$basedir/node_modules/npm/bin/npx-cli.js"

case `uname` in
  *MINGW*)
    NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix -g`
    NPM_PREFIX_NPX_CLI_JS="$NPM_PREFIX/node_modules/npm/bin/npx-cli.js"
    if [ -f "$NPM_PREFIX_NPX_CLI_JS" ]; then
      NPX_CLI_JS="$NPM_PREFIX_NPX_CLI_JS"
    fi
    ;;
  *CYGWIN*)
    NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix -g`
    NPM_PREFIX_NPX_CLI_JS="$NPM_PREFIX/node_modules/npm/bin/npx-cli.js"
    if [ -f "$NPM_PREFIX_NPX_CLI_JS" ]; then
      NPX_CLI_JS="$NPM_PREFIX_NPX_CLI_JS"
    fi
    ;;
esac

"$NODE_EXE" "$NPX_CLI_JS" "$@"