Commit Graph

202 Commits

Author SHA1 Message Date
John Firebaugh
c91b44b02f Add binary for smoke-testing offline downloads 2016-02-10 15:40:20 -08:00
Minh Nguyễn
f65ff9ef30 [ios] Split API index from package readme
The API index page serves a different purpose than the readme. It doesn’t need installation instructions, but it does need a brief What’s New section.
2016-01-22 14:45:58 -08:00
Minh Nguyễn
83deed6a88 [ios] make idocument
Split API documentation generation into a separate make target that can be run independently of building the SDK.
2016-01-22 14:45:58 -08:00
Minh Nguyễn
7338db692d [ios] Refactored build scripts
package.sh now recognizes several environment variables through make that influence the build settings and targets. Info.plist variables are substituted with the correct values in both the static and dynamic frameworks.

Fixes #3656.
2016-01-22 14:45:57 -08:00
Minh Nguyễn
9350d3f78c [ios] Converted iOS SDK into dynamic framework
make iproj now produces a target that pulls together static libraries like core and platform-ios into a real dynamic framework. iosapp is pretty much just a regular iOS application that links Mapbox.framework (except for the inclusion of default_styles.hpp). iosapp runs fine in the Simulator and on a device, and the same is true for any application linking against Mapbox.framework.

The ipackage target produces both a Bitcode-disabled static framework and a Bitcode-enabled dynamic framework, eliminating the need for a separate framework.sh. It disables code signing, since that happens on copy when the framework is embedded inside the application bundle. It also merges the device and simulator builds into a single fat framework.

Also bumped itest minimum deployment target to iOS 8.0, the first version that supports linking frameworks.

Fixes #828.
2016-01-22 14:45:56 -08:00
Anton Malinskiy
a6a3b8a80a [android] Fixed x86_64 crash on startup: no implementation previously for cache's get/bind by chrono's seconds for x86_64. Explicitly cast to int64_t 2016-01-07 18:32:17 +07:00
Minh Nguyễn
ceb0790cd8 [osx] Unit tests
Added an XCTest bundle to the osxsdk scheme. It contains some basic tests of shared iOS/OS X code.
2015-12-24 14:41:23 -08: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
Minh Nguyễn
7bfb776618 Fixed make run-osx, make run-xosx 2015-12-22 10:39:50 -08:00
Minh Nguyễn
bfcbae375b [osx] make osx with Xcode
make osx now builds with Xcode instead of make, because building the OS X SDK and osxapp requires Xcode-specific build settings. make xosx and make nosx are now aliases to make osx.

Fixes #3293.
2015-12-21 19:50:41 -08:00
John Firebaugh
3d37017c68 [ios, osx] Drop xcpretty
It's buggy and hides necessary diagnostics.
2015-12-21 16:59:35 -08:00
John Firebaugh
7a4e7376e1 Move platform scripts into platforms 2015-12-16 17:49:22 -08:00
John Firebaugh
13d5b18eba [android] Move into platform subdirectory 2015-12-16 14:52:29 -08:00
Bruno de Oliveira Abinader
4ae4325c81 [osx] 'make run-linux' should work on OSX 2015-12-15 09:45:53 -08:00
Minh Nguyễn
df0511af18 [osx] Build framework based on static library 2015-12-13 17:26:53 -08:00
Minh Nguyễn
0cab7809eb [osx] Rewrote platform-osx and osxapp
platform-osx now vends a real NSView subclass, MGLMapView, that is readily embedded inside a Cocoa application for OS X. MGLMapView is backed by an NSOpenGLLayer for optimal performance and integration with other layer-backed views. It supports keyboard shortcuts and several gestures and hosts attribution, zooming, and rotation controls as subviews. osxapp is now a bona fide Cocoa application that embeds MGLMapView inside a XIB. osxapp has preferences and a share button for tight integration with custom styles.

Enabling asynchronous rendering would be more consistent with iOS but increases CPU usage so much, even when idle, that it isn’t worth any performance gain. The bigger issue is that VAOs aren’t being used.

make xpackage creates a static library similar to the one created by make ipackage. make clean cleans additional places where build output ends up.

The OS X minimum deployment target has been increased from 10.9 to 10.10. osxapp’s window has a full size content view, which requires 10.10. Lightweight generics require iOS 9+ and OS X 10.11 regardless, because it was only in that release that Foundation collection classes started adopting lightweight generics.

Shuffled files around and refactored annotations so that iOS and OS X share a good chunk of the annotations code, which now takes advantage of polymorphism. MGLMapView can now display annotations but cannot yet select them. In osxapp, a long press drops a pin, and so does the map view’s context menu.

Annotations have NSPopovers as callouts, and their view controllers can be customized. Annotation image alignment rects are respected for hit testing purposes and for positioning the callout anchor. Callouts in osxapp demonstrate the use of bindings to keep callouts in sync with underlying model objects.
2015-12-13 17:17:35 -08:00
Konstantin Käfer
249966a9d7 [node] don't go through npm to debug in Xcode 2015-12-09 11:54:04 -08:00
Konstantin Käfer
e12cd6aef4 [build] Add clang-tidy to Travis 2015-12-03 15:38:36 +01:00
Konstantin Käfer
0c8eeea665 [build] add make target "tidy" for running clang-tidy 2015-12-03 12:06:51 +01:00
Konstantin Käfer
678a5ca91e [build] add ninja + compilation database support 2015-12-03 11:13:43 +01:00
Justin R. Miller
ed8d183fec refs #3045: fix up target
[skip ci]
2015-11-16 16:10:26 -08:00
Justin R. Miller
42a60a6661 static framework target for iOS 2015-11-16 11:53:00 -08:00
Minh Nguyễn
57574badb0 Publish Bitcode-less build for Xcode 6.4
Publish a Release-configuration, symbol-laden, Bitcode-less build in tandem with the other builds.

Fixes #2332.
2015-11-11 11:01:47 -08:00
Mike Morris
36a8fb32d5 [node] Fixes 'make xnode' to configure HOST_SLUG.gypi
Adds node-gyp to dev-dependencies to support 'make xnode' on Node v0.10.x
Ignores -Wnested-anon-types around v8.h includes.
2015-11-05 18:16:33 -05:00
Konstantin Käfer
6dd07c3f70 [node] create npm test and npm run test-suite targets 2015-10-26 18:02:29 +01:00
Mike Morris
f6af65770d [node] make task for building node via Xcode 2015-10-26 18:02:29 +01:00
Leith Bade
39911e581c [android] Move android files
Fixes #2032
2015-10-25 01:07:16 +11:00
Leith Bade
18bc490f40 Fix build with Crashlytics NDK on 64bit 2015-09-24 10:38:03 +10:00
Leith Bade
db6a08d8ca Add Crashlytics NDK to Android
Closes #2107
2015-09-23 11:19:58 +10:00
Bastien Mayard
765bae4c5c fix Makefile clean to clean ./android/java/MapboxGLAndroidSDK/build too 2015-09-16 14:00:00 -07:00
Justin R. Miller
1aee3c6c52 refs #1956: remove all Android 64-bit ABI's for now 2015-09-04 09:13:33 -07:00
Justin R. Miller
264f3d8679 make android-all -> make apackage to be more in line with iOS distribution 2015-09-04 09:13:33 -07:00
Mike Morris
3fea9d3878 'make node' compiles! 2015-08-25 14:30:13 -04:00
Mike Morris
8a67805a3c Revert "PLATFORM=node make node"
This reverts commit cef04fcfa7.
2015-08-24 17:12:02 -04:00
Mike Morris
cef04fcfa7 PLATFORM=node make node 2015-08-21 16:34:21 -04:00
Konstantin Käfer
6807d75777 explicitly tell make that the subcommand is also make
it seems that some make versions can't correctly detect that the subcommand is also a make and pass on the required options if the invocation is expanded from a variable. prepending `+` makes this explicit
2015-08-19 11:33:23 -04:00
Leith Bade
dbaac73e2c Replace deprecated gradle --parallel-threads flag 2015-08-13 13:36:24 +10:00
Thiago Marcos P. Santos
27e24578f9 Bring run-linux targets back 2015-08-05 14:55:57 +03:00
Konstantin Käfer
e6053aa547 Make build system architecture agnostic to remove Android special case 2015-08-04 14:08:58 +02:00
Justin R. Miller
73737445ec fixes #1650: default to no symbols for release builds, but build both 2015-06-17 12:48:11 -07:00
Justin R. Miller
bd0bf294bf squash of #1655: shape annotations support for core & iOS 2015-06-15 18:30:39 -07:00
John Firebaugh
f44894e295 Remove clean from ipackage* dependencies
Fixes #1584
2015-05-18 13:14:09 -07:00
Konstantin Käfer
f31b3d2ce5 build render binary 2015-05-12 15:15:05 +02:00
Mike Morris
319d940161 bring back $JOBS for ios packaging 2015-05-11 15:06:51 -04:00
Thiago Marcos P. Santos
6b82608068 Added convenience target to run with Valgrind on OSX and Linux
The target (run-valgrind-[osx|linux]) will launch the test app
with valgrind using the leak checker and our custom suppresion file.
2015-05-07 15:00:12 +03:00
Konstantin Käfer
24083c582c [iOS] add benchmarking application 2015-05-05 11:53:20 +02:00
Thiago Marcos P. Santos
e955e6cae2 Merge pull request #1371 from mapbox/fix_android_build_on_linux
Get the number of CPUs correctly on Linux
2015-04-29 22:39:56 +03:00
Thiago Marcos P. Santos
8f813a4ef1 Get the number of CPUs correctly on Linux 2015-04-29 16:51:46 +03:00
Justin R. Miller
0995930d90 fixes #1361: split iOS device & sim builds (sim-only for tests) 2015-04-28 17:47:59 -04:00
Konstantin Käfer
473aa281c7 make meta-target for all iOS targets too and split up project.gyp
this will make it easier to add more targets to iOS builds in the future. It'll also help by having Xcode files named after the platform they're for, so it's easier to distinguish windows
2015-04-28 16:16:09 +02:00