gyp: muffle xcodebuild warnings
Muffle xcodebuild warnings by introducing an alternative quieter alternative to GetStdout, called GetStdoutQuiet, and call it selectively in particularly noisy xcodebuild commands. Co-authored-by: Gibson Fahnestock <gibfahn@gmail.com> PR-URL: https://github.com/nodejs/node/pull/21999 Original-PR-URL: https://github.com/nodejs/node-gyp/pull/1370 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
This commit is contained in:
Родитель
e09296be81
Коммит
cd5c672cfc
|
@ -495,7 +495,7 @@ class XcodeSettings(object):
|
|||
# Since the CLT has no SDK paths anyway, returning None is the
|
||||
# most sensible route and should still do the right thing.
|
||||
try:
|
||||
return GetStdout(['xcrun', '--sdk', sdk, infoitem])
|
||||
return GetStdoutQuiet(['xcrun', '--sdk', sdk, infoitem])
|
||||
except:
|
||||
pass
|
||||
|
||||
|
@ -1394,7 +1394,7 @@ def XcodeVersion():
|
|||
if XCODE_VERSION_CACHE:
|
||||
return XCODE_VERSION_CACHE
|
||||
try:
|
||||
version_list = GetStdout(['xcodebuild', '-version']).splitlines()
|
||||
version_list = GetStdoutQuiet(['xcodebuild', '-version']).splitlines()
|
||||
# In some circumstances xcodebuild exits 0 but doesn't return
|
||||
# the right results; for example, a user on 10.7 or 10.8 with
|
||||
# a bogus path set via xcode-select
|
||||
|
@ -1444,6 +1444,18 @@ def CLTVersion():
|
|||
continue
|
||||
|
||||
|
||||
def GetStdoutQuiet(cmdlist):
|
||||
"""Returns the content of standard output returned by invoking |cmdlist|.
|
||||
Ignores the stderr.
|
||||
Raises |GypError| if the command return with a non-zero return code."""
|
||||
job = subprocess.Popen(cmdlist, stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE)
|
||||
out = job.communicate()[0]
|
||||
if job.returncode != 0:
|
||||
raise GypError('Error %d running %s' % (job.returncode, cmdlist[0]))
|
||||
return out.rstrip('\n')
|
||||
|
||||
|
||||
def GetStdout(cmdlist):
|
||||
"""Returns the content of standard output returned by invoking |cmdlist|.
|
||||
Raises |GypError| if the command return with a non-zero return code."""
|
||||
|
|
Загрузка…
Ссылка в новой задаче