From f964e40e7e9220d08751d8607af61ac5a7c0794c Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Sun, 3 Apr 2016 15:16:49 -0700 Subject: [build] Refactor and simplify build system * Main gyp files are now standardized as platform//platform.gyp. * Each platform gyp file defines appropriate loop_lib and headless_lib variables. * Each platform gyp file includes mbgl.gypi, which defines base targets which may be useful to all platforms. * CI targets are consistent across platforms: `make $(PLATFORM) && make test-$(PLATFORM)`. * Renamed the "linux" test app to "glfw". It's now built in OS X CI. * Android build flakiness is fixed. * iOS CI builds the bench and iosapp targets. * Mesa version is now in one place. * CI scripts use bash "strict mode" and correct error handling. * All build output goes to the build directory. * Removed vestigial iOS/OS X/Android Travis scripts. --- binding.gyp | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 67 insertions(+), 7 deletions(-) (limited to 'binding.gyp') diff --git a/binding.gyp b/binding.gyp index 6cf0d1cd6f..10ed677ba3 100644 --- a/binding.gyp +++ b/binding.gyp @@ -1,18 +1,30 @@ { + 'variables': { + 'loop_lib': 'uv', + 'headless_lib': 'glx', + }, + 'conditions': [ + ['OS == "mac"', { + 'variables': { + 'headless_lib': 'cgl', + } + }], + ], 'includes': [ - 'gyp/common.gypi', + 'mbgl.gypi', ], 'targets': [ - { 'target_name': '<(module_name)', + { + 'target_name': '<(module_name)', 'dependencies': [ - 'gyp/mbgl.gyp:core', - 'gyp/mbgl.gyp:platform-<(platform_lib)', - 'gyp/mbgl.gyp:headless-<(headless_lib)', + 'core', ], 'include_dirs': [ '<(node_root_dir)/include/node', "