@@ -16,7 +16,8 @@ if (!buildFromSource()) {
16
16
}
17
17
18
18
function build ( ) {
19
- var args = [ os . platform ( ) === 'win32' ? 'node-gyp.cmd' : 'node-gyp' , 'rebuild' ]
19
+ var win32 = os . platform ( ) === 'win32'
20
+ var args = [ win32 ? 'node-gyp.cmd' : 'node-gyp' , 'rebuild' ]
20
21
21
22
try {
22
23
var pkg = require ( 'node-gyp/package.json' )
@@ -27,7 +28,7 @@ function build () {
27
28
]
28
29
} catch ( _ ) { }
29
30
30
- proc . spawn ( args [ 0 ] , args . slice ( 1 ) , { stdio : 'inherit' } ) . on ( 'exit' , function ( code ) {
31
+ proc . spawn ( args [ 0 ] , args . slice ( 1 ) , { stdio : 'inherit' , shell : win32 , windowsHide : true } ) . on ( 'exit' , function ( code ) {
31
32
if ( code || ! process . argv [ 3 ] ) process . exit ( code )
32
33
exec ( process . argv [ 3 ] ) . on ( 'exit' , function ( code ) {
33
34
process . exit ( code )
@@ -45,15 +46,18 @@ function preinstall () {
45
46
46
47
function exec ( cmd ) {
47
48
if ( process . platform !== 'win32' ) {
48
- var shell = os . platform ( ) === 'android' ? 'sh' : '/bin/sh'
49
- return proc . spawn ( shell , [ '-c' , '--' , cmd ] , {
49
+ var shell = os . platform ( ) === 'android' ? 'sh' : true
50
+ return proc . spawn ( cmd , [ ] , {
51
+ shell,
50
52
stdio : 'inherit'
51
53
} )
52
54
}
53
55
54
- return proc . spawn ( process . env . comspec || ' cmd.exe' , [ '/s' , '/c' , '"' + cmd + '"' ] , {
56
+ return proc . spawn ( cmd , [ ] , {
55
57
windowsVerbatimArguments : true ,
56
- stdio : 'inherit'
58
+ stdio : 'inherit' ,
59
+ shell : true ,
60
+ windowsHide : true
57
61
} )
58
62
}
59
63
0 commit comments