summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsdefresne@chromium.org <sdefresne@chromium.org@78cadc50-ecff-11dd-a971-7dbc132099af>2014-08-01 09:21:10 +0000
committersdefresne@chromium.org <sdefresne@chromium.org@78cadc50-ecff-11dd-a971-7dbc132099af>2014-08-01 09:21:10 +0000
commitcd5d655d509fa48b699c20ce86ab395f4169b953 (patch)
tree1a75912ae61764df12c8d590159fbd3b851b57ed
parentac2684beed6e8ca04ac5f837c9db869eefec7bb5 (diff)
downloadgyp-cd5d655d509fa48b699c20ce86ab395f4169b953.tar.gz
Guard against configurations without 'xcode_settings'
e.g. test/generator-output/src/prog1.gyp TEST=Run ./gyptest.py -f xcode-ninja test/generator-output/gyptest-top-all.py Expected to fail with OSError: [Errno 13] Permission denied: 'prog1.ninja.xcworkspace' (instead of KeyError: 'xcode_settings') R=sdefresne@chromium.org, justincohen@chromium.org Review URL: https://codereview.chromium.org/428913002 git-svn-id: http://gyp.googlecode.com/svn/trunk@1960 78cadc50-ecff-11dd-a971-7dbc132099af
-rw-r--r--pylib/gyp/xcode_ninja.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/pylib/gyp/xcode_ninja.py b/pylib/gyp/xcode_ninja.py
index 2a89fa98..a005dfde 100644
--- a/pylib/gyp/xcode_ninja.py
+++ b/pylib/gyp/xcode_ninja.py
@@ -80,7 +80,8 @@ def _TargetFromSpec(old_spec, params):
if 'configurations' in old_spec:
for config in old_spec['configurations'].iterkeys():
- old_xcode_settings = old_spec['configurations'][config]['xcode_settings']
+ old_xcode_settings = \
+ old_spec['configurations'][config].get('xcode_settings', {})
if 'IPHONEOS_DEPLOYMENT_TARGET' in old_xcode_settings:
new_xcode_settings['CODE_SIGNING_REQUIRED'] = "NO"
new_xcode_settings['IPHONEOS_DEPLOYMENT_TARGET'] = \