[build] Refactor and simplify build system

* Main gyp files are now standardized as platform/<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.
This commit is contained in:
John Firebaugh
2016-04-03 15:16:49 -07:00
parent f5d66f3622
commit f964e40e7e
94 changed files with 1689 additions and 3099 deletions

View File

@@ -45,15 +45,7 @@ TEST(API, TEST_REQUIRES_SERVER(RenderMissingTile)) {
std::rethrow_exception(err);
} catch (const std::exception& ex) {
message = ex.what();
#ifdef MBGL_HTTP_NSURL
EXPECT_STREQ("Could not connect to the server.", ex.what());
#elif MBGL_HTTP_CURL
const char* prefix = "Couldn't connect to server:";
EXPECT_EQ(0, strncmp(prefix, ex.what(), strlen(prefix))) << "Full message is: \""
<< ex.what() << "\"";
#else
FAIL();
#endif
EXPECT_TRUE(message.find("connect") != std::string::npos);
}
promise.set_value();
});