blob: 4357fac79e82099cc1ee6068b12bf886b46c04fa [file] [log] [blame]
LOCAL_PATH := $(my-dir)
FOLLY_LIBFOLLYBASE_SOURCES := \
Conv.cpp \
Demangle.cpp \
android/src/EscapeTables.cpp \
Format.cpp \
android/src/FormatTables.cpp \
Malloc.cpp \
Range.cpp \
StringBase.cpp \
String.cpp \
detail/FunctionalExcept.cpp
FOLLY_LIBFOLLY_SOURCES = \
detail/CacheLocality.cpp \
dynamic.cpp \
File.cpp \
FileUtil.cpp \
futures/detail/ThreadWheelTimekeeper.cpp \
futures/detail/TimerMap.cpp \
futures/Barrier.cpp \
futures/ThreadedExecutor.cpp \
futures/Future.cpp \
futures/InlineExecutor.cpp \
futures/ManualExecutor.cpp \
futures/QueuedImmediateExecutor.cpp \
futures/ScheduledExecutor.cpp \
detail/Futex.cpp \
LifoSem.cpp \
io/IOBuf.cpp \
io/IOBufQueue.cpp \
detail/MemoryIdler.cpp \
Random.cpp \
SpookyHashV1.cpp \
SpookyHashV2.cpp \
stats/Instantiations.cpp \
Version.cpp
###
### libfollybase
###
include $(CLEAR_VARS)
include $(LOCAL_PATH)/android/build/faux-folly-common.mk
LOCAL_SRC_FILES := \
$(FOLLY_LIBFOLLYBASE_SOURCES)
LOCAL_MODULE := libfollybase
include $(BUILD_STATIC_LIBRARY)
###
### libfolly
###
include $(CLEAR_VARS)
include $(LOCAL_PATH)/android/build/faux-folly-common.mk
# See https://groups.google.com/forum/#!topic/android-ndk/6TR4MA7LxYg
# the android defaults triggers the problem at CacheLocality.cpp:235
LOCAL_CFLAGS += -fno-function-sections -fno-data-sections
LOCAL_SRC_FILES := \
$(FOLLY_LIBFOLLY_SOURCES)
LOCAL_WHOLE_STATIC_LIBRARIES += libfollybase
LOCAL_STATIC_LIBRARIES += libjemalloc
LOCAL_MODULE := libfolly
include $(BUILD_SHARED_LIBRARY)
###
### libfollybenchmark
###
include $(CLEAR_VARS)
include $(LOCAL_PATH)/android/build/faux-folly-common.mk
LOCAL_SRC_FILES := Benchmark.cpp
LOCAL_SHARED_LIBRARIES += libboost_regex \
libfolly
LOCAL_MODULE := libfollybenchmark
include $(BUILD_STATIC_LIBRARY)
###
### UNIT TESTS
###
FAUX_FOLLY_UNIT_TESTS :=
FAUX_FOLLY_BUILD_TEST_EXECUTABLE := $(LOCAL_PATH)/android/build/faux-folly-test-case.mk
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/ForeachTest.cpp
LOCAL_MODULE := foreach_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/HashTest.cpp
LOCAL_MODULE := hash_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/FBStringTest.cpp
LOCAL_MODULE := fbstring_test_using_jemalloc
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/ThreadCachedIntTest.cpp
LOCAL_MODULE := thread_cached_int_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/ThreadLocalTest.cpp
LOCAL_SHARED_LIBRARIES += libboost_thread \
libboost_system
LOCAL_MODULE := thread_local_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/FBVectorTest.cpp
LOCAL_MODULE := fbvector_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
## # fails due to cout
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/DynamicTest.cpp
LOCAL_MODULE := dynamic_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/BenchmarkTest.cpp
LOCAL_MODULE := benchmark_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
# fails due to destructor
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/ScopeGuardTest.cpp
LOCAL_MODULE := scope_guard_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/ConvTest.cpp
LOCAL_MODULE := conv_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/RangeTest.cpp
LOCAL_MODULE := range_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/BitsTest.cpp
LOCAL_MODULE := bits_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/BitIteratorTest.cpp
LOCAL_MODULE := bit_iterator_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/EndianTest.cpp
LOCAL_MODULE := endian_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/HistogramTest.cpp
LOCAL_MODULE := histogram_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/MapUtilTest.cpp
LOCAL_MODULE := map_util_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/StringTest.cpp
LOCAL_MODULE := string_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/FormatTest.cpp
LOCAL_MODULE := format_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/PortabilityTest.cpp
LOCAL_MODULE := portability_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/SpookyHashV1Test.cpp
LOCAL_MODULE := spooky_hash_v1_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/SpookyHashV2Test.cpp
LOCAL_MODULE := spooky_hash_v2_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/CancellationTest.cpp
LOCAL_MODULE := cancellation_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/MPMCQueueTest.cpp \
test/DeterministicSchedule.cpp
LOCAL_MODULE := mpmc_queue_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/FutexTest.cpp \
test/DeterministicSchedule.cpp
LOCAL_MODULE := futex_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := test/DeterministicScheduleTest.cpp \
test/DeterministicSchedule.cpp
LOCAL_MODULE := deterministic_schedule_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := \
futures/test/CancellationTest.cpp \
futures/test/CollectTest.cpp \
futures/test/ThreadedExecutorTest.cpp \
futures/test/EnsureTest.cpp \
futures/test/ExecutorTest.cpp \
futures/test/FSMTest.cpp \
futures/test/FilterTest.cpp \
futures/test/FutureTest.cpp \
futures/test/HeaderCompileTest.cpp \
futures/test/InterruptTest.cpp \
futures/test/MapTest.cpp \
futures/test/PollTest.cpp \
futures/test/PromiseTest.cpp \
futures/test/ReduceTest.cpp \
futures/test/SharedPromiseTest.cpp \
futures/test/ThenCompileTest.cpp \
futures/test/ThenTest.cpp \
futures/test/TimekeeperTest.cpp \
futures/test/TimerMapTest.cpp \
futures/test/TryTest.cpp \
futures/test/UnitTest.cpp \
futures/test/UnwrapTest.cpp \
futures/test/ViaTest.cpp \
futures/test/WaitTest.cpp \
futures/test/WillEqualTest.cpp \
futures/test/WindowTest.cpp
LOCAL_SHARED_LIBRARIES += libboost_thread \
libboost_system
LOCAL_MODULE := futures_test
include $(FAUX_FOLLY_BUILD_TEST_EXECUTABLE)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := android/test/faux-folly-tests.sh
LOCAL_MODULE_CLASS := EXECUTABLES
LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/faux-folly
LOCAL_REQUIRED_MODULES := $(FAUX_FOLLY_UNIT_TESTS)
LOCAL_MODULE := faux-folly-tests.sh
include $(BUILD_PREBUILT)
###
### Clean the environment...
### the EPA loves us!
###
override FOLLY_LIBFOLLYBASE_SOURCES :=
override FOLLY_LIBFOLLY_SOURCES :=