mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-02 04:04:19 +00:00
* Added internal - limited - implementation of flatbuffers::unique_ptr for STLs that don't ship with std::unique_ptr. In C++11 and beyond this is just an alias for std::unique_ptr. * Aliased used type traits structs is_scalar is_floating_point is_unsigned into flatbuffers namespace so they can be replaced in C++98 implementations. Right now these point at stlport's TR1 implementations. * Wrapped vector::data() in vector_data(). * Wrapped vector::emplace_back() in vector_emplace_back(). * Wrapper string::back() in string_back(). * Added variants of FlatBufferBuilder::CreateVector() and FlatBufferBuilder::CreateVectorOfStructs() that allow the use of plain function pointers. Generated code has also been modified to use plain functions to build objects rather than std::function() so all generated code will work in C++98 applications. * Added flexbuffers::Builder::Vector(), flexbuffers::Builder::TypedVector() and flexbuffers::Builder::Map() methods that allow the use of plain function pointers. * Changed Parser to internally use plain function pointers when parsing table and vector delimiters. * Added specializations of NumToString() for 64-bit types that aren't supported by stringstream in stlport. * Overloaded numeric_limits for 64-bit types not supported by stlport. * Replaced build_apk.sh (which was broken by deprecation of the "android" tool in the Android SDK) with build.gradle and the appropriate gradle wrapper to build an APK. * Switched Android build to build against all STL variants. * Updated travis configuration to build Android test and sample. Tested: * Verified all tests continue to work on Linux, OSX and Android. * Verified Travis build is green. Change-Id: I9e634363793f85b9f141d21454b10686020a2065
57 lines
2.1 KiB
Makefile
Executable File
57 lines
2.1 KiB
Makefile
Executable File
# Copyright (c) 2013 Google, Inc.
|
|
#
|
|
# This software is provided 'as-is', without any express or implied
|
|
# warranty. In no event will the authors be held liable for any damages
|
|
# arising from the use of this software.
|
|
# Permission is granted to anyone to use this software for any purpose,
|
|
# including commercial applications, and to alter it and redistribute it
|
|
# freely, subject to the following restrictions:
|
|
# 1. The origin of this software must not be misrepresented; you must not
|
|
# claim that you wrote the original software. If you use this software
|
|
# in a product, an acknowledgment in the product documentation would be
|
|
# appreciated but is not required.
|
|
# 2. Altered source versions must be plainly marked as such, and must not be
|
|
# misrepresented as being the original software.
|
|
# 3. This notice may not be removed or altered from any source distribution.
|
|
|
|
LOCAL_PATH := $(call my-dir)
|
|
FLATBUFFERS_ROOT_DIR := $(LOCAL_PATH)/../../..
|
|
|
|
# FlatBuffers test
|
|
include $(CLEAR_VARS)
|
|
|
|
# Include the FlatBuffer utility function to generate header files from schemas.
|
|
include $(FLATBUFFERS_ROOT_DIR)/android/jni/include.mk
|
|
|
|
LOCAL_MODULE := FlatBufferSample
|
|
|
|
# Set up some useful variables to identify schema and output directories and
|
|
# schema files.
|
|
ANDROID_SAMPLE_GENERATED_OUTPUT_DIR := $(LOCAL_PATH)/gen/include
|
|
ANDROID_SAMPLE_SCHEMA_DIR := $(LOCAL_PATH)/schemas
|
|
ANDROID_SAMPLE_SCHEMA_FILES := $(ANDROID_SAMPLE_SCHEMA_DIR)/animal.fbs
|
|
|
|
LOCAL_C_INCLUDES := $(ANDROID_SAMPLE_GENERATED_OUTPUT_DIR)
|
|
|
|
$(info $(LOCAL_C_INCLUDES))
|
|
|
|
LOCAL_SRC_FILES := main.cpp
|
|
|
|
LOCAL_CPPFLAGS := -std=c++11 -fexceptions -Wall -Wno-literal-suffix
|
|
LOCAL_LDLIBS := -llog -landroid -latomic
|
|
LOCAL_ARM_MODE := arm
|
|
LOCAL_STATIC_LIBRARIES := android_native_app_glue flatbuffers
|
|
|
|
ifeq (,$(ANDROID_SAMPLE_RUN_ONCE))
|
|
ANDROID_SAMPLE_RUN_ONCE := 1
|
|
$(call flatbuffers_header_build_rules,$(ANDROID_SAMPLE_SCHEMA_FILES),$(ANDROID_SAMPLE_SCHEMA_DIR),$(ANDROID_SAMPLE_GENERATED_OUTPUT_DIR),,$(LOCAL_SRC_FILES))
|
|
endif
|
|
|
|
include $(BUILD_SHARED_LIBRARY)
|
|
|
|
# Path to Flatbuffers root directory.
|
|
$(call import-add-path,$(FLATBUFFERS_ROOT_DIR)/..)
|
|
|
|
$(call import-module,flatbuffers/android/jni)
|
|
$(call import-module,android/native_app_glue)
|