summaryrefslogtreecommitdiff
path: root/tools/gyp/pylib/gyp/generator/eclipse.py
diff options
context:
space:
mode:
authorBen Noordhuis <info@bnoordhuis.nl>2013-03-24 14:29:17 +0100
committerBen Noordhuis <info@bnoordhuis.nl>2013-03-24 15:03:09 +0100
commit8632af381e7086823db764f815cbee53681d450b (patch)
tree84c752dbe7c2adb53a567087ac995383fb3e3935 /tools/gyp/pylib/gyp/generator/eclipse.py
parent329b5388ba5a74aa3c4a7e142ba33510e4282cc1 (diff)
downloadandroid-node-v8-8632af381e7086823db764f815cbee53681d450b.tar.gz
android-node-v8-8632af381e7086823db764f815cbee53681d450b.tar.bz2
android-node-v8-8632af381e7086823db764f815cbee53681d450b.zip
tools: update gyp to r1601
Among other things, this should make it easier for people to build node.js on openbsd.
Diffstat (limited to 'tools/gyp/pylib/gyp/generator/eclipse.py')
-rw-r--r--tools/gyp/pylib/gyp/generator/eclipse.py32
1 files changed, 18 insertions, 14 deletions
diff --git a/tools/gyp/pylib/gyp/generator/eclipse.py b/tools/gyp/pylib/gyp/generator/eclipse.py
index 0f90b5ea60..08425da8e8 100644
--- a/tools/gyp/pylib/gyp/generator/eclipse.py
+++ b/tools/gyp/pylib/gyp/generator/eclipse.py
@@ -41,11 +41,11 @@ for unused in ['RULE_INPUT_PATH', 'RULE_INPUT_ROOT', 'RULE_INPUT_NAME',
'CONFIGURATION_NAME']:
generator_default_variables[unused] = ''
-# Include dirs will occasionaly use the SHARED_INTERMEDIATE_DIR variable as
+# Include dirs will occasionally use the SHARED_INTERMEDIATE_DIR variable as
# part of the path when dealing with generated headers. This value will be
# replaced dynamically for each configuration.
generator_default_variables['SHARED_INTERMEDIATE_DIR'] = \
- '$SHARED_INTERMEDIATES_DIR'
+ '$SHARED_INTERMEDIATE_DIR'
def CalculateVariables(default_variables, params):
@@ -65,7 +65,7 @@ def CalculateGeneratorInputInfo(params):
def GetAllIncludeDirectories(target_list, target_dicts,
- shared_intermediates_dir, config_name):
+ shared_intermediate_dirs, config_name):
"""Calculate the set of include directories to be used.
Returns:
@@ -96,17 +96,18 @@ def GetAllIncludeDirectories(target_list, target_dicts,
# Find standard gyp include dirs.
if config.has_key('include_dirs'):
include_dirs = config['include_dirs']
- for include_dir in include_dirs:
- include_dir = include_dir.replace('$SHARED_INTERMEDIATES_DIR',
- shared_intermediates_dir)
- if not os.path.isabs(include_dir):
- base_dir = os.path.dirname(target_name)
+ for shared_intermediate_dir in shared_intermediate_dirs:
+ for include_dir in include_dirs:
+ include_dir = include_dir.replace('$SHARED_INTERMEDIATE_DIR',
+ shared_intermediate_dir)
+ if not os.path.isabs(include_dir):
+ base_dir = os.path.dirname(target_name)
- include_dir = base_dir + '/' + include_dir
- include_dir = os.path.abspath(include_dir)
+ include_dir = base_dir + '/' + include_dir
+ include_dir = os.path.abspath(include_dir)
- if not include_dir in gyp_includes_set:
- gyp_includes_set.add(include_dir)
+ if not include_dir in gyp_includes_set:
+ gyp_includes_set.add(include_dir)
# Generate a list that has all the include dirs.
@@ -234,7 +235,10 @@ def GenerateOutputForConfig(target_list, target_dicts, data, params,
config_name)
toplevel_build = os.path.join(options.toplevel_dir, build_dir)
- shared_intermediate_dir = os.path.join(toplevel_build, 'obj', 'gen')
+ # Ninja uses out/Debug/gen while make uses out/Debug/obj/gen as the
+ # SHARED_INTERMEDIATE_DIR. Include both possible locations.
+ shared_intermediate_dirs = [os.path.join(toplevel_build, 'obj', 'gen'),
+ os.path.join(toplevel_build, 'gen')]
if not os.path.exists(toplevel_build):
os.makedirs(toplevel_build)
@@ -246,7 +250,7 @@ def GenerateOutputForConfig(target_list, target_dicts, data, params,
eclipse_langs = ['C++ Source File', 'C Source File', 'Assembly Source File',
'GNU C++', 'GNU C', 'Assembly']
include_dirs = GetAllIncludeDirectories(target_list, target_dicts,
- shared_intermediate_dir, config_name)
+ shared_intermediate_dirs, config_name)
WriteIncludePaths(out, eclipse_langs, include_dirs)
defines = GetAllDefines(target_list, target_dicts, data, config_name)
WriteMacros(out, eclipse_langs, defines)