Commit Graph

47 Commits

Author SHA1 Message Date
Konstantin Käfer
0fe60d398e [build] add benchmark target 2016-06-06 13:50:55 +02:00
Bruno de Oliveira Abinader
a3e0c60a7c [build] Added unique_resource as dependency 2016-06-01 13:53:39 +03:00
John Firebaugh
faaafb8387 [core] Replace clipper and libtess with earcut.hpp 2016-05-31 10:15:18 -07:00
John Firebaugh
eb03611943 [build] Make gyp commands more consistent 2016-05-24 09:55:13 -07:00
John Firebaugh
f38f58f758 [build] Avoid variable name coupling between main.mk and configure.sh 2016-05-23 17:36:20 -07:00
John Firebaugh
9a7b7f6af3 [core] Update to geometry.hpp 0.5.0 2016-05-13 09:01:32 -07:00
Thiago Marcos P. Santos
6a9a8e2008 [build] Fix broken build on OSX 2016-05-10 14:41:04 +03:00
Thiago Marcos P. Santos
4213dc53dc [Qt] Use C++11 ABI packages
These were causing linking errors on more recent Linux distros.

Fixes #3123.
2016-05-10 11:36:56 +03:00
John Firebaugh
771e79a769 [core] Update geometry to 0.3.0 2016-05-06 11:59:29 -07:00
John Firebaugh
9330d674a9 [core] Use geometry.hpp's point 2016-05-05 11:30:53 -07:00
John Firebaugh
c8391729c7 [core] Use geometry.hpp feature type 2016-05-03 17:25:49 -07:00
John Firebaugh
01b3eac52f [build] '<@(foo_static_libs)' must precede '<@(foo_ldflags)'
'<@(foo_ldflags)' typically includes -lbar arguments that the static libs depend on, and order matters for ld.

The build was previously working merely by lucky ordering.
2016-05-03 16:59:04 -07:00
Dane Springmeyer
c82b02c508 [core] port to protozero (#4906) 2016-05-03 13:57:17 -07:00
John Firebaugh
7800445c85 [core] Use gyp's direct_dependent_settings to propagate variant cflags 2016-05-02 13:12:24 -07:00
John Firebaugh
c1ad321485 [linux] Build with GCC 5 (#4901)
* [linux] Build with GCC 5

* [build] -fabi-version=0 is the default for GCC 5
2016-04-29 09:57:21 -07:00
John Firebaugh
10528091db [core] Upgrade to boost 1.60.0 (#4899) 2016-04-28 15:21:50 -07:00
Bruno de Oliveira Abinader
6857002cb9 [build] Bump geojson-vt-cpp to v4.1.2
Minor version bump to resolve cross-compilation issues while using
geojson-vt-cpp v4.1.0.
2016-04-18 14:17:45 +03:00
John Firebaugh
3af3e72bb3 [all] Replace HTTPContextBase/HTTPRequestBase with FileSource 2016-04-14 14:18:19 -07:00
John Firebaugh
1c7c5af69d [ios] Run core unit tests in CI 2016-04-11 11:00:34 -07:00
John Firebaugh
f964e40e7e [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.
2016-04-07 18:01:02 -07:00
John Firebaugh
879382f724 [ios, osx] Replace libuv with native implementations 2016-04-01 09:26:54 -07:00
Ansis Brammanis
b6a181097c [core] fix reparsing overscaled geojson tiles
fix #3838
2016-03-30 13:57:47 -07:00
Ansis Brammanis
387f37d035 [core] increase geojson buffer size to match -js 2016-03-30 13:13:53 -07:00
John Firebaugh
39cbfcb5c9 [core] Update to variant 1.1.0 2016-03-23 15:26:34 -07:00
Bruno de Oliveira Abinader
0c57efb9a8 [gyp] Use variant compiler flags when needed 2016-02-21 17:34:15 +02:00
Bruno de Oliveira Abinader
bfd5ad3220 [gyp] Coverage only if BUILDTYPE=Debug and ENABLE_COVERAGE=1
Coverage compiler and linker flags are used only when (1) in debug build
and (2) with ENABLE_COVERAGE set to 1. Besides, because OS X's libtool
is unable to understand '--coverage', this linker flag is only used
genrating executable targets. Also, using 'link_settings' to specify
linker options and separate instructions for OSX and Linux.
2016-02-21 17:22:26 +02:00
Bruno de Oliveira Abinader
1dbfbfe7e3 [tests] Upload coverage reports to coveralls.io 2016-02-20 11:43:42 +02:00
Bruno de Oliveira Abinader
6792d78952 [tests] Use ENABLE_COVERAGE=1 envvar to enable coverage
This detaches coverage data collection from typical debug build.
2016-02-19 17:40:30 +02:00
Bruno de Oliveira Abinader
dd7bbc024a [tests] Fix 'linux' debug build on OSX 2016-02-18 17:02:08 +02:00
Bruno de Oliveira Abinader
ec97264431 [osx] Enable coverage support for debug build 2016-02-18 15:01:58 +02:00
Thiago Marcos P. Santos
43ed846a12 [build] Build offline tool on the bots
Make sure it doesn't break.
2016-02-11 17:25:15 +02:00
John Firebaugh
db3620c58f [core] Implement an eviction policy for OfflineDatabase
When inserting an cached resource, or removing a region, remove least-recently used resources and tiles, not used by offline regions, until the used database size, as calculated by multiplying the number of in-use pages by the page size, is less than the maximum cache size minus 5 times the page size.

In addition, OfflineDatabase may be configured to ignore cache puts of individual resources larger than a certain size.

This policy is similar but not identical to the former SQLiteCache policy:

* It accounts for offline, by exempting resources required by offline regions from eviction.
* It must delete from two tables (resources and tiles), rather than one. Currently the strategy is naive: evict 50 rows at a time from each table.
* It makes maximumCacheSize and maximumCacheEntrySize completely independent. The SQLiteCache implementation evicted when `usedSize > maximumCacheSize - 2 * maximumCacheEntrySize`. This evicts when `usedSize > maximumCacheSize - 5 * pageSize`.
* It uses a non-unlimited default value for maximumCacheSize: 50 MB. We should have always had a limit in place; "a cache without an eviction policy is a resource leak".
2016-02-10 15:40:20 -08:00
John Firebaugh
d7db9c775a [all] Make #include <mapbox/variant.hpp> universally accessible 2016-02-04 11:08:02 -08:00
Konstantin Käfer
9cfe64a122 [build] replace jpeg library with libjpeg-turbo 2016-01-22 16:00:51 +01:00
Bruno de Oliveira Abinader
9cd9065031 Revert "Revert WebP support due to broken builds"
This reverts commit 6709bdcacd.

There was an issue with the script that removes '-lwebp' from WebP
linker flags, since we're statically linking. This is now fixed.
2016-01-20 10:35:44 +02:00
John Firebaugh
6709bdcacd Revert WebP support due to broken builds
This reverts commits 2010fbb0e6, a361ce47a1, and d004bb275a.
2016-01-19 13:34:56 -08:00
Bruno de Oliveira Abinader
d004bb275a [linux] Added WebP build deps 2016-01-19 15:41:47 +02:00
Konstantin Käfer
21e4029acf [core] use stale styles
This adds support for using cached styles that are stale. They're treated like changing styles; when the refreshed style changed compared to the one we've already had, we're swapping out the entire style, which might cause a slight flicker.
2016-01-15 11:59:26 +01:00
John Firebaugh
5a7d2fd60e [core] Eliminate platform::assetRoot()
I regenerated assets.zip so that all file paths have an `assets/` prefix, as the Android AssetFileSource implementation asserts, and removed `TEST_DATA` from the paths.
2016-01-13 13:40:31 -08:00
John Firebaugh
e7b0b31d58 [core] Privatize SQLiteCache 2016-01-08 12:31:13 -08:00
Konstantin Käfer
aa76b680ef [build] change Mac OS X platform target to avoid mismatch 2016-01-07 16:13:20 +01:00
Dane Springmeyer
12345e56d4 [android, linux, osx] Upgrade to libpng 1.6.20
- refs https://github.com/mapbox/mason/tree/libpng-1.6.20
 - refs https://travis-ci.org/mapbox/mason/builds/100661025
2016-01-06 16:35:16 -08:00
Minh Nguyễn
f8f735b574 Rewrote documentation
Rewrote some copy to provide more context and link to more GL-related repos, including GL JS. Put the various SDKs in a table so we can show the various CI bot status images.

Integrated target list into the relevant documents. Rewrote large portions of iOS and OS X setup documentation to guide normal developers to more friendly places. Combined some Android documentation.

Moved SDK-specific documentation into platform/. Added a temporary readme in ios/ that points to the one in platform/ios/.
2016-01-05 08:04:16 -08:00
Thiago Marcos P. Santos
6d0b01c5fb [core] Make it possible to limit the size of the SQLite cache 2015-12-27 18:15:33 +02:00
John Firebaugh
b60b6c47c0 [core] Merge SQLiteCache into the platform library
OfflineFileSource will depend on SQLite too.
2015-12-22 12:09:14 -08:00
John Firebaugh
7a4e7376e1 Move platform scripts into platforms 2015-12-16 17:49:22 -08:00
John Firebaugh
0ff9295ca8 [core] Move linux and osx to platform subdirectory 2015-12-10 16:50:39 -08:00