diff --git a/lib/fb/build.gradle b/lib/fb/build.gradle new file mode 100644 index 00000000..ae388d09 --- /dev/null +++ b/lib/fb/build.gradle @@ -0,0 +1,27 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion rootProject.compileSdkVersion + buildToolsVersion rootProject.buildToolsVersion + + defaultConfig { + minSdkVersion rootProject.minSdkVersion + targetSdkVersion rootProject.targetSdkVersion + + ndk { + abiFilters 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'arm64-v8a' + } + + externalNativeBuild { + cmake { + arguments '-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=c++_static' + } + } + } + + externalNativeBuild { + cmake { + path 'src/main/cpp/CMakeLists.txt' + } + } +} diff --git a/lib/fb/src/main/AndroidManifest.xml b/lib/fb/src/main/AndroidManifest.xml new file mode 100644 index 00000000..8e81b59d --- /dev/null +++ b/lib/fb/src/main/AndroidManifest.xml @@ -0,0 +1,14 @@ + + + + + + diff --git a/lib/fb/src/main/cpp/CMakeLists.txt b/lib/fb/src/main/cpp/CMakeLists.txt new file mode 100644 index 00000000..2612547d --- /dev/null +++ b/lib/fb/src/main/cpp/CMakeLists.txt @@ -0,0 +1,33 @@ +# +# Copyright (c) 2014-present, Facebook, Inc. +# All rights reserved. +# +# This source code is licensed under the BSD-style license found in the +# LICENSE file in the root directory of this source tree. An additional grant +# of patent rights can be found in the PATENTS file in the same directory. +# + +cmake_minimum_required(VERSION 3.4.1) + +set(CMAKE_VERBOSE_MAKEFILE on) + +add_compile_options( + -fno-omit-frame-pointer + -fexceptions + -Wall + -std=c++11 + -DDISABLE_CPUCAP + -DDISABLE_XPLAT) + +file(GLOB fb_SRC + *.cpp + jni/*.cpp + lyra/*.cpp) + +add_library(fb SHARED + ${fb_SRC}) + +target_include_directories(fb PRIVATE + include) + +target_link_libraries(fb android log) diff --git a/lib/fb/Doxyfile b/lib/fb/src/main/cpp/Doxyfile similarity index 100% rename from lib/fb/Doxyfile rename to lib/fb/src/main/cpp/Doxyfile diff --git a/lib/fb/assert.cpp b/lib/fb/src/main/cpp/assert.cpp similarity index 100% rename from lib/fb/assert.cpp rename to lib/fb/src/main/cpp/assert.cpp diff --git a/lib/fb/include/fb/ALog.h b/lib/fb/src/main/cpp/include/fb/ALog.h similarity index 100% rename from lib/fb/include/fb/ALog.h rename to lib/fb/src/main/cpp/include/fb/ALog.h diff --git a/lib/fb/include/fb/Countable.h b/lib/fb/src/main/cpp/include/fb/Countable.h similarity index 100% rename from lib/fb/include/fb/Countable.h rename to lib/fb/src/main/cpp/include/fb/Countable.h diff --git a/lib/fb/include/fb/Doxyfile b/lib/fb/src/main/cpp/include/fb/Doxyfile similarity index 100% rename from lib/fb/include/fb/Doxyfile rename to lib/fb/src/main/cpp/include/fb/Doxyfile diff --git a/lib/fb/include/fb/Environment.h b/lib/fb/src/main/cpp/include/fb/Environment.h similarity index 100% rename from lib/fb/include/fb/Environment.h rename to lib/fb/src/main/cpp/include/fb/Environment.h diff --git a/lib/fb/include/fb/ProgramLocation.h b/lib/fb/src/main/cpp/include/fb/ProgramLocation.h similarity index 100% rename from lib/fb/include/fb/ProgramLocation.h rename to lib/fb/src/main/cpp/include/fb/ProgramLocation.h diff --git a/lib/fb/include/fb/RefPtr.h b/lib/fb/src/main/cpp/include/fb/RefPtr.h similarity index 100% rename from lib/fb/include/fb/RefPtr.h rename to lib/fb/src/main/cpp/include/fb/RefPtr.h diff --git a/lib/fb/include/fb/StaticInitialized.h b/lib/fb/src/main/cpp/include/fb/StaticInitialized.h similarity index 100% rename from lib/fb/include/fb/StaticInitialized.h rename to lib/fb/src/main/cpp/include/fb/StaticInitialized.h diff --git a/lib/fb/include/fb/ThreadLocal.h b/lib/fb/src/main/cpp/include/fb/ThreadLocal.h similarity index 100% rename from lib/fb/include/fb/ThreadLocal.h rename to lib/fb/src/main/cpp/include/fb/ThreadLocal.h diff --git a/lib/fb/include/fb/assert.h b/lib/fb/src/main/cpp/include/fb/assert.h similarity index 100% rename from lib/fb/include/fb/assert.h rename to lib/fb/src/main/cpp/include/fb/assert.h diff --git a/lib/fb/include/fb/fbjni.h b/lib/fb/src/main/cpp/include/fb/fbjni.h similarity index 100% rename from lib/fb/include/fb/fbjni.h rename to lib/fb/src/main/cpp/include/fb/fbjni.h diff --git a/lib/fb/include/fb/fbjni/Boxed.h b/lib/fb/src/main/cpp/include/fb/fbjni/Boxed.h similarity index 100% rename from lib/fb/include/fb/fbjni/Boxed.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Boxed.h diff --git a/lib/fb/include/fb/fbjni/ByteBuffer.h b/lib/fb/src/main/cpp/include/fb/fbjni/ByteBuffer.h similarity index 100% rename from lib/fb/include/fb/fbjni/ByteBuffer.h rename to lib/fb/src/main/cpp/include/fb/fbjni/ByteBuffer.h diff --git a/lib/fb/include/fb/fbjni/Common.h b/lib/fb/src/main/cpp/include/fb/fbjni/Common.h similarity index 100% rename from lib/fb/include/fb/fbjni/Common.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Common.h diff --git a/lib/fb/include/fb/fbjni/Context.h b/lib/fb/src/main/cpp/include/fb/fbjni/Context.h similarity index 100% rename from lib/fb/include/fb/fbjni/Context.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Context.h diff --git a/lib/fb/include/fb/fbjni/CoreClasses-inl.h b/lib/fb/src/main/cpp/include/fb/fbjni/CoreClasses-inl.h similarity index 100% rename from lib/fb/include/fb/fbjni/CoreClasses-inl.h rename to lib/fb/src/main/cpp/include/fb/fbjni/CoreClasses-inl.h diff --git a/lib/fb/include/fb/fbjni/CoreClasses.h b/lib/fb/src/main/cpp/include/fb/fbjni/CoreClasses.h similarity index 100% rename from lib/fb/include/fb/fbjni/CoreClasses.h rename to lib/fb/src/main/cpp/include/fb/fbjni/CoreClasses.h diff --git a/lib/fb/include/fb/fbjni/Exceptions.h b/lib/fb/src/main/cpp/include/fb/fbjni/Exceptions.h similarity index 100% rename from lib/fb/include/fb/fbjni/Exceptions.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Exceptions.h diff --git a/lib/fb/include/fb/fbjni/File.h b/lib/fb/src/main/cpp/include/fb/fbjni/File.h similarity index 100% rename from lib/fb/include/fb/fbjni/File.h rename to lib/fb/src/main/cpp/include/fb/fbjni/File.h diff --git a/lib/fb/include/fb/fbjni/Hybrid.h b/lib/fb/src/main/cpp/include/fb/fbjni/Hybrid.h similarity index 100% rename from lib/fb/include/fb/fbjni/Hybrid.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Hybrid.h diff --git a/lib/fb/include/fb/fbjni/Iterator-inl.h b/lib/fb/src/main/cpp/include/fb/fbjni/Iterator-inl.h similarity index 100% rename from lib/fb/include/fb/fbjni/Iterator-inl.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Iterator-inl.h diff --git a/lib/fb/include/fb/fbjni/Iterator.h b/lib/fb/src/main/cpp/include/fb/fbjni/Iterator.h similarity index 100% rename from lib/fb/include/fb/fbjni/Iterator.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Iterator.h diff --git a/lib/fb/include/fb/fbjni/JThread.h b/lib/fb/src/main/cpp/include/fb/fbjni/JThread.h similarity index 100% rename from lib/fb/include/fb/fbjni/JThread.h rename to lib/fb/src/main/cpp/include/fb/fbjni/JThread.h diff --git a/lib/fb/include/fb/fbjni/Meta-forward.h b/lib/fb/src/main/cpp/include/fb/fbjni/Meta-forward.h similarity index 100% rename from lib/fb/include/fb/fbjni/Meta-forward.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Meta-forward.h diff --git a/lib/fb/include/fb/fbjni/Meta-inl.h b/lib/fb/src/main/cpp/include/fb/fbjni/Meta-inl.h similarity index 100% rename from lib/fb/include/fb/fbjni/Meta-inl.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Meta-inl.h diff --git a/lib/fb/include/fb/fbjni/Meta.h b/lib/fb/src/main/cpp/include/fb/fbjni/Meta.h similarity index 100% rename from lib/fb/include/fb/fbjni/Meta.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Meta.h diff --git a/lib/fb/include/fb/fbjni/MetaConvert.h b/lib/fb/src/main/cpp/include/fb/fbjni/MetaConvert.h similarity index 100% rename from lib/fb/include/fb/fbjni/MetaConvert.h rename to lib/fb/src/main/cpp/include/fb/fbjni/MetaConvert.h diff --git a/lib/fb/include/fb/fbjni/NativeRunnable.h b/lib/fb/src/main/cpp/include/fb/fbjni/NativeRunnable.h similarity index 100% rename from lib/fb/include/fb/fbjni/NativeRunnable.h rename to lib/fb/src/main/cpp/include/fb/fbjni/NativeRunnable.h diff --git a/lib/fb/include/fb/fbjni/ReferenceAllocators-inl.h b/lib/fb/src/main/cpp/include/fb/fbjni/ReferenceAllocators-inl.h similarity index 100% rename from lib/fb/include/fb/fbjni/ReferenceAllocators-inl.h rename to lib/fb/src/main/cpp/include/fb/fbjni/ReferenceAllocators-inl.h diff --git a/lib/fb/include/fb/fbjni/ReferenceAllocators.h b/lib/fb/src/main/cpp/include/fb/fbjni/ReferenceAllocators.h similarity index 100% rename from lib/fb/include/fb/fbjni/ReferenceAllocators.h rename to lib/fb/src/main/cpp/include/fb/fbjni/ReferenceAllocators.h diff --git a/lib/fb/include/fb/fbjni/References-forward.h b/lib/fb/src/main/cpp/include/fb/fbjni/References-forward.h similarity index 100% rename from lib/fb/include/fb/fbjni/References-forward.h rename to lib/fb/src/main/cpp/include/fb/fbjni/References-forward.h diff --git a/lib/fb/include/fb/fbjni/References-inl.h b/lib/fb/src/main/cpp/include/fb/fbjni/References-inl.h similarity index 100% rename from lib/fb/include/fb/fbjni/References-inl.h rename to lib/fb/src/main/cpp/include/fb/fbjni/References-inl.h diff --git a/lib/fb/include/fb/fbjni/References.h b/lib/fb/src/main/cpp/include/fb/fbjni/References.h similarity index 100% rename from lib/fb/include/fb/fbjni/References.h rename to lib/fb/src/main/cpp/include/fb/fbjni/References.h diff --git a/lib/fb/include/fb/fbjni/Registration-inl.h b/lib/fb/src/main/cpp/include/fb/fbjni/Registration-inl.h similarity index 100% rename from lib/fb/include/fb/fbjni/Registration-inl.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Registration-inl.h diff --git a/lib/fb/include/fb/fbjni/Registration.h b/lib/fb/src/main/cpp/include/fb/fbjni/Registration.h similarity index 100% rename from lib/fb/include/fb/fbjni/Registration.h rename to lib/fb/src/main/cpp/include/fb/fbjni/Registration.h diff --git a/lib/fb/include/fb/fbjni/TypeTraits.h b/lib/fb/src/main/cpp/include/fb/fbjni/TypeTraits.h similarity index 100% rename from lib/fb/include/fb/fbjni/TypeTraits.h rename to lib/fb/src/main/cpp/include/fb/fbjni/TypeTraits.h diff --git a/lib/fb/include/fb/log.h b/lib/fb/src/main/cpp/include/fb/log.h similarity index 100% rename from lib/fb/include/fb/log.h rename to lib/fb/src/main/cpp/include/fb/log.h diff --git a/lib/fb/include/fb/lyra.h b/lib/fb/src/main/cpp/include/fb/lyra.h similarity index 100% rename from lib/fb/include/fb/lyra.h rename to lib/fb/src/main/cpp/include/fb/lyra.h diff --git a/lib/fb/include/fb/noncopyable.h b/lib/fb/src/main/cpp/include/fb/noncopyable.h similarity index 100% rename from lib/fb/include/fb/noncopyable.h rename to lib/fb/src/main/cpp/include/fb/noncopyable.h diff --git a/lib/fb/include/fb/nonmovable.h b/lib/fb/src/main/cpp/include/fb/nonmovable.h similarity index 100% rename from lib/fb/include/fb/nonmovable.h rename to lib/fb/src/main/cpp/include/fb/nonmovable.h diff --git a/lib/fb/include/fb/visibility.h b/lib/fb/src/main/cpp/include/fb/visibility.h similarity index 100% rename from lib/fb/include/fb/visibility.h rename to lib/fb/src/main/cpp/include/fb/visibility.h diff --git a/lib/fb/include/jni/Countable.h b/lib/fb/src/main/cpp/include/jni/Countable.h similarity index 100% rename from lib/fb/include/jni/Countable.h rename to lib/fb/src/main/cpp/include/jni/Countable.h diff --git a/lib/fb/include/jni/GlobalReference.h b/lib/fb/src/main/cpp/include/jni/GlobalReference.h similarity index 100% rename from lib/fb/include/jni/GlobalReference.h rename to lib/fb/src/main/cpp/include/jni/GlobalReference.h diff --git a/lib/fb/include/jni/LocalReference.h b/lib/fb/src/main/cpp/include/jni/LocalReference.h similarity index 100% rename from lib/fb/include/jni/LocalReference.h rename to lib/fb/src/main/cpp/include/jni/LocalReference.h diff --git a/lib/fb/include/jni/LocalString.h b/lib/fb/src/main/cpp/include/jni/LocalString.h similarity index 100% rename from lib/fb/include/jni/LocalString.h rename to lib/fb/src/main/cpp/include/jni/LocalString.h diff --git a/lib/fb/include/jni/Registration.h b/lib/fb/src/main/cpp/include/jni/Registration.h similarity index 100% rename from lib/fb/include/jni/Registration.h rename to lib/fb/src/main/cpp/include/jni/Registration.h diff --git a/lib/fb/include/jni/WeakReference.h b/lib/fb/src/main/cpp/include/jni/WeakReference.h similarity index 100% rename from lib/fb/include/jni/WeakReference.h rename to lib/fb/src/main/cpp/include/jni/WeakReference.h diff --git a/lib/fb/include/jni/jni_helpers.h b/lib/fb/src/main/cpp/include/jni/jni_helpers.h similarity index 100% rename from lib/fb/include/jni/jni_helpers.h rename to lib/fb/src/main/cpp/include/jni/jni_helpers.h diff --git a/lib/fb/jni/ByteBuffer.cpp b/lib/fb/src/main/cpp/jni/ByteBuffer.cpp similarity index 100% rename from lib/fb/jni/ByteBuffer.cpp rename to lib/fb/src/main/cpp/jni/ByteBuffer.cpp diff --git a/lib/fb/jni/Countable.cpp b/lib/fb/src/main/cpp/jni/Countable.cpp similarity index 100% rename from lib/fb/jni/Countable.cpp rename to lib/fb/src/main/cpp/jni/Countable.cpp diff --git a/lib/fb/jni/Environment.cpp b/lib/fb/src/main/cpp/jni/Environment.cpp similarity index 100% rename from lib/fb/jni/Environment.cpp rename to lib/fb/src/main/cpp/jni/Environment.cpp diff --git a/lib/fb/jni/Exceptions.cpp b/lib/fb/src/main/cpp/jni/Exceptions.cpp similarity index 100% rename from lib/fb/jni/Exceptions.cpp rename to lib/fb/src/main/cpp/jni/Exceptions.cpp diff --git a/lib/fb/jni/Hybrid.cpp b/lib/fb/src/main/cpp/jni/Hybrid.cpp similarity index 100% rename from lib/fb/jni/Hybrid.cpp rename to lib/fb/src/main/cpp/jni/Hybrid.cpp diff --git a/lib/fb/jni/LocalString.cpp b/lib/fb/src/main/cpp/jni/LocalString.cpp similarity index 100% rename from lib/fb/jni/LocalString.cpp rename to lib/fb/src/main/cpp/jni/LocalString.cpp diff --git a/lib/fb/jni/OnLoad.cpp b/lib/fb/src/main/cpp/jni/OnLoad.cpp similarity index 100% rename from lib/fb/jni/OnLoad.cpp rename to lib/fb/src/main/cpp/jni/OnLoad.cpp diff --git a/lib/fb/jni/References.cpp b/lib/fb/src/main/cpp/jni/References.cpp similarity index 100% rename from lib/fb/jni/References.cpp rename to lib/fb/src/main/cpp/jni/References.cpp diff --git a/lib/fb/jni/WeakReference.cpp b/lib/fb/src/main/cpp/jni/WeakReference.cpp similarity index 100% rename from lib/fb/jni/WeakReference.cpp rename to lib/fb/src/main/cpp/jni/WeakReference.cpp diff --git a/lib/fb/jni/fbjni.cpp b/lib/fb/src/main/cpp/jni/fbjni.cpp similarity index 100% rename from lib/fb/jni/fbjni.cpp rename to lib/fb/src/main/cpp/jni/fbjni.cpp diff --git a/lib/fb/jni/java/CppException.java b/lib/fb/src/main/cpp/jni/java/CppException.java similarity index 100% rename from lib/fb/jni/java/CppException.java rename to lib/fb/src/main/cpp/jni/java/CppException.java diff --git a/lib/fb/jni/java/CppSystemErrorException.java b/lib/fb/src/main/cpp/jni/java/CppSystemErrorException.java similarity index 100% rename from lib/fb/jni/java/CppSystemErrorException.java rename to lib/fb/src/main/cpp/jni/java/CppSystemErrorException.java diff --git a/lib/fb/jni/java/UnknownCppException.java b/lib/fb/src/main/cpp/jni/java/UnknownCppException.java similarity index 100% rename from lib/fb/jni/java/UnknownCppException.java rename to lib/fb/src/main/cpp/jni/java/UnknownCppException.java diff --git a/lib/fb/jni/jni_helpers.cpp b/lib/fb/src/main/cpp/jni/jni_helpers.cpp similarity index 100% rename from lib/fb/jni/jni_helpers.cpp rename to lib/fb/src/main/cpp/jni/jni_helpers.cpp diff --git a/lib/fb/log.cpp b/lib/fb/src/main/cpp/log.cpp similarity index 100% rename from lib/fb/log.cpp rename to lib/fb/src/main/cpp/log.cpp diff --git a/lib/fb/lyra/lyra.cpp b/lib/fb/src/main/cpp/lyra/lyra.cpp similarity index 100% rename from lib/fb/lyra/lyra.cpp rename to lib/fb/src/main/cpp/lyra/lyra.cpp diff --git a/lib/fb/onload.cpp b/lib/fb/src/main/cpp/onload.cpp similarity index 100% rename from lib/fb/onload.cpp rename to lib/fb/src/main/cpp/onload.cpp