Commit Graph

118 Commits

Author SHA1 Message Date
Bruno de Oliveira Abinader
6a838eeffb [build] Replace boost_libprogram_options with args 2017-12-18 16:40:29 +02:00
Chris Loer
1661af1cb4 [core] Enable local glyph generation using TinySDF.
- Platform-specific LocalGlyphRasterizer is responsible for deciding which glyphs to rasterize locally and for implementing the rasterization.
 - Default platform implementation doesn't locally generate any glyphs -> no behavior change
 - Unit test uses StubLocalGlyphRasterizer, which returns a single fixed bitmap for all CJK glyphs
 - Rename glyph_loader.test to glyph_manager.test
2017-12-11 10:43:00 -08:00
Konstantin Käfer
8757164ac8 [build] standardize on -fvisibility=hidden for all targets
Enables -fvisibility=hidden for iOS and Linux, and adds a workaround for GCC 6.3-7.1
Adds a GCC 6 build
Enables diagnostics for C files
Fixes a shadow warning in parsedate.c
2017-11-29 17:31:33 +01:00
Konstantin Käfer
2eec5a1980 [core] move HeadlessBackend extension initialization code into Impl 2017-11-29 15:48:51 +01:00
Konstantin Käfer
335f04f7e1 [core] fold HeadlessDisplay into the headless RenderBackend implementation 2017-11-29 15:48:51 +01:00
Thiago Marcos P. Santos
9d87dc8cf1 [core] Make the OpenGL implementation platform specific
Split the headers, so each platform includes the most appropriated
header.
2017-10-25 18:08:28 +03:00
Konstantin Käfer
64c75b442c [build] split out DefaultFileSource and dependents to a separate target
We don't want to link it into the node bindings, so keep it in a separate target
2017-09-28 13:48:36 -04:00
Ivo van Dongen
abecfe2333 [linux] headless display - support opengl es 2 2017-08-30 17:18:37 +03:00
Anand Thakker
d436bcd56b Add {Source,CompositeCamera}Function benchmarks (#9838) 2017-08-29 10:03:57 -04:00
John Firebaugh
32bd1d54fa [node, tests] Consolidate headless rendering logic in HeadlessFrontend 2017-07-26 09:50:38 -07:00
Bruno de Oliveira Abinader
15c5bf359a [build] Downgrade GCC support from 5.0 to 4.9 2017-07-19 19:24:30 +03:00
Ivo van Dongen
a5a0558bde [test] allow only a single shared display to avoid egl errors 2017-07-18 10:45:12 +02:00
Bruno de Oliveira Abinader
d0be2ed2a6 [build] Update GLFW to 2017-07-13-67c9155 2017-07-13 14:59:06 +03:00
Thiago Marcos P. Santos
7c117281bc [core] Isolate pthread-based tls implementation 2017-07-07 18:10:06 +03:00
Bruno de Oliveira Abinader
461387343d [build] Switch from Travis CI to CircleCI 2017-06-22 13:33:16 -07:00
Bruno de Oliveira Abinader
17af488048 [tidy] modernize-make-unique 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
1e1da36123 [tidy] modernize-use-equals-default 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
9894e58047 [tidy] modernize-use-override 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
fa36110dfb [tidy] modernize-use-auto 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
fd9e60c748 [build] Added 'shared_thread_pool.cpp' to 'mbgl-core' target on Linux 2017-05-02 12:54:37 +03:00
Konstantin Käfer
6fcac0f580 [core] always create a pixelbuffer surface in the EGL backend
We need a surface to activate a context. Some implementation don't seem to error when passing EGL_NO_SURFACE, but it doesn't seem standards compliant.
2017-04-05 23:05:46 +02:00
Konstantin Käfer
7c69cfa6de [core] destroy surface before context in EGL backend 2017-04-05 23:05:46 +02:00
Konstantin Käfer
c86b492bf7 [build] don't advertise headers that aren't used in public headers 2017-03-28 21:24:12 +02:00
John Firebaugh
321d820a87 [node] Eliminate src as an include path 2017-03-28 13:53:19 +02:00
Konstantin Käfer
234384ece9 [core] Move OpenGL extension initialization to Backend 2017-03-23 14:50:11 -07:00
John Firebaugh
3afae825c7 Use ICU compiled with -Os 2017-03-08 14:05:19 -08:00
Thiago Marcos P. Santos
d2469f4bdb [build] Fix build on Ubuntu 16.04+
gtest was broken because of lack of CXX11ABI support.
2017-02-23 18:39:40 +02:00
John Firebaugh
092213091b [linux] Don't manually activate context before destroying it 2017-02-22 09:27:32 -08:00
Konstantin Käfer
e66f050b99 [glfw] use newer version that allows automated graphics switching on macOS 2017-02-10 17:55:57 +01:00
Konstantin Käfer
bb931505c5 [build] Remove Mason submodule in favor of CMake mason 2017-02-08 19:07:16 +01:00
Konstantin Käfer
a253a15a7c [linux] update CA bundle and add script for automated updates
also removes the ca-bundle.crt from the Android build, since it's entirely unused
2017-01-27 14:52:21 +01:00
Konstantin Käfer
1715bf9508 [core] replace encodePNG() with a version that doesn't use libpng
rationale: encodePNG is only used in tests + sample apps, but shouldn't actually be part of the core library. In #7828, we're removing the libpng dependency for Android, and using a libpng-free version of encodePNG allows us to run the core unit tests on Android without pulling in libpng just for the test suite. In a next step, we should remove encodePNG() from the image.hpp header, which is a public header.
2017-01-25 10:32:23 +01:00
John Firebaugh
0ccc255f0e [linux] mesa 13.0.3 2017-01-23 11:13:42 -06:00
Thiago Marcos P. Santos
181b3635f1 [core][Qt] Use Qt for UTF16, since codecvt is not always available 2017-01-20 18:50:45 +01:00
Bruno de Oliveira Abinader
49da57393a [core] Remove platform-specific main.cpp from MBGL_TEST_FILES 2017-01-18 19:06:32 +01:00
Thiago Marcos P. Santos
76301b252c [build] Fix mbgl-offline tool build on recent Linux distros 2017-01-16 17:53:02 +02:00
John Firebaugh
a47600a41d [linux] No need for CXXABI suffix for mesa 2017-01-12 13:10:24 -02:00
John Firebaugh
033c7a8d3e Add cmake to linux README 2017-01-11 14:40:10 -08:00
Bruno de Oliveira Abinader
ce5ed9e649 [build] ICU is now configured per platform 2016-12-12 22:34:52 +02:00
John Firebaugh
385fbe6a07 [all] Upgrade to boost 1.62.0 2016-12-05 08:31:00 -08:00
Bruno de Oliveira Abinader
e987e406c7 [android] Use pBuffer for headless EGL backend 2016-11-27 18:50:24 +02:00
Konstantin Käfer
e76de05402 [build] move logging to util 2016-11-22 20:58:51 +01:00
Konstantin Käfer
117863f111 [build] move headless rendering files to platform/default 2016-11-22 20:58:51 +01:00
Konstantin Käfer
3bc79e316e [build] move default ThreadPool implementation to platform/default 2016-11-22 20:58:51 +01:00
Bruno de Oliveira Abinader
ad38ff230b [linux] Ensure EGL uses OpenGL ES 2.0 client API 2016-11-17 01:01:15 +01:00
Bruno de Oliveira Abinader
0ef52d7f7c [build] Added EGL & GLX CI builds 2016-11-17 01:01:15 +01:00
Tiago Vignatti
32b6f2fa03 [linux] Implement EGL headless backend
Original author: Tiago Vignatti <tvignatti@gmail.com>

Calling X11 window system is superfluous for headless rendering. This patch
implements EGL platform using GBM, which is slightly more simple than the GLX
path when using X11.

In principle there are no big advantages in terms of performance etc. My
motivation behind this was to get in touch with the code and the project. For
testing I'm using:

  $ unset DISPLAY && ./build/linux-x86_64/Debug/mbgl-test

v2: rebased patch against the new cmake changes; walk through render node to
find a valid one; remove EGLSurface completely cause windows are not needed
here.
2016-11-17 01:01:15 +01:00
Konstantin Käfer
223a95a74f [build] add binary size logging to Linux Release builds 2016-11-15 10:07:47 -08:00
Bruno de Oliveira Abinader
8e99ae44dd [build] Use mesa-13.0.0-glx in CI builds 2016-11-08 18:02:38 +02:00
Bruno de Oliveira Abinader
d0ac12309b [core] Refactor HeadlessBackend 2016-11-08 18:02:38 +02:00