Folly builds

This commit is contained in:
Pritesh Nandgaonkar
2018-06-14 17:59:24 +01:00
parent 04784186df
commit e50122dc85
7 changed files with 26 additions and 36 deletions

View File

@@ -105,16 +105,16 @@ task prepareFolly(dependsOn: [downloadFolly], type: Copy) {
}
task downloadLibEvent(dependsOn: [], type: Download) {
src 'https://github.com/libevent/libevent/archive/release-2.1.8-stable.tar.gz'
src 'https://github.com/priteshrnandgaonkar/libevent/archive/release-2.1.9.tar.gz'
onlyIfNewer true
overwrite false
dest new File(downloadsDir, 'libevent-release-2.1.8-stable.tar.gz');
dest new File(downloadsDir, 'libevent-release-2.1.9.tar.gz');
}
task prepareLibEvent(dependsOn: [downloadLibEvent], type: Copy) {
from tarTree(downloadLibEvent.dest)
from './third-party/LibEvent/'
include 'libevent-release-2.1.8-stable/**/*', 'build.gradle', 'CMakeLists.txt', 'ApplicationManifest.xml'
include 'libevent-release-2.1.9/**/*', 'build.gradle', 'ApplicationManifest.xml'
includeEmptyDirs = false
into "$thirdPartyNdkDir/LibEvent"
}
@@ -123,7 +123,7 @@ task finalizeEvent(dependsOn: [prepareLibEvent], type: Copy) {
from './third-party/LibEvent/'
include 'event-config.h'
includeEmptyDirs = false
into "$thirdPartyNdkDir/LibEvent/libevent-release-2.1.8-stable/include/event2/"
into "$thirdPartyNdkDir/LibEvent/libevent-release-2.1.9/include/event2/"
}
task finalizeEvent2(dependsOn: [finalizeEvent], type: Copy) {
@@ -160,7 +160,7 @@ task prepareAllLibs() {
dependsOn prepareDoubleConversion
dependsOn prepareBoost
dependsOn prepareFolly
dependsOn finalizeEvent2
dependsOn finalizeEvent
dependsOn finalizeOpenSSL
}

View File

@@ -3,10 +3,11 @@ cmake_minimum_required (VERSION 3.6.0)
PROJECT(folly CXX)
enable_language(CXX)
set(PACKAGE_NAME folly)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_EXTENSIONS OFF)
set(FOLLY_DIR ${PROJECT_SOURCE_DIR}/folly)
list(APPEND dir_list ./)
list(APPEND dir_list ${FOLLY_DIR}/lang)
list(APPEND dir_list ${FOLLY_DIR}/hash/)
@@ -16,8 +17,7 @@ list(APPEND dir_list ${FOLLY_DIR}/memory/detail)
set(BOOST_DIR ../boost/boost_1_63_0/)
set(GLOG_DIR ../glog/)
set(OPENSSL_DIR ../OpenSSL/openssl-android-1.0.0/)
set(LIBEVENT_DIR ../LibEvent/libevent-release-2.1.8-stable/)
set(LIBEVENT_DIR ../LibEvent/libevent-release-2.1.9/)
set(DOUBLECONVERSION_DIR ../double-conversion/double-conversion-3.0.0/)
list(APPEND dir_list ${BOOST_DIR})
@@ -29,7 +29,9 @@ list(APPEND dir_list ${OPENSSL_DIR})
#list(APPEND dir_list ${OPENSSL_DIR}/include/openssl)
include_directories(${dir_list})
# -DFOLLY_FORCE_CLOCK_GETTIME_DEFINITION=1
# -DFOLLY_FORCE_CLOCK_GETTIME_DEFINITION=1 -std=c++14
add_compile_options(
-DFOLLY_HAVE_CLOCK_GETTIME=1
-DFOLLY_HAVE_PTHREAD=1
@@ -41,7 +43,6 @@ add_compile_options(
-DFOLLY_HAVE_PREADV=0
-frtti
-fexceptions
-std=c++14
-Wno-error
-Wno-unused-local-typedefs
-Wno-unused-variable
@@ -50,16 +51,8 @@ add_compile_options(
-Wno-return-type
-Wno-tautological-constant-compare
)
# ${FOLLY_DIR}/*.cpp
# ${FOLLY_DIR}/portability/*.cpp
# ${FOLLY_DIR}/detail/*.cpp
# ${FOLLY_DIR}/hash/*.cpp
# ${FOLLY_DIR}/io/async/*.cpp
file(GLOB SRC_FILES ${FOLLY_DIR}/portability/*.cpp
${FOLLY_DIR}/io/async/ssl/*.cpp
# ${FOLLY_DIR}/io/*.cpp
${FOLLY_DIR}/detail/*.cpp
${FOLLY_DIR}/synchronization/*.cpp
${FOLLY_DIR}/lang/*.cpp
@@ -73,9 +66,7 @@ add_compile_options(
${FOLLY_DIR}/concurrency/*.cpp
${FOLLY_DIR}/ssl/*.cpp
${FOLLY_DIR}/ssl/detail/*.cpp
# ${FOLLY_DIR}/system/*.cpp
)
# ${FOLLY_DIR}/io/async/AsyncServerSocket.cpp
list(APPEND SRC_FILES ${FOLLY_DIR}/io/async/HHWheelTimer.cpp
${FOLLY_DIR}/io/async/AsyncPipe.cpp
${FOLLY_DIR}/io/async/AsyncTimeout.cpp
@@ -91,8 +82,6 @@ list(APPEND SRC_FILES ${FOLLY_DIR}/io/async/HHWheelTimer.cpp
${FOLLY_DIR}/system/ThreadName.cpp
${FOLLY_DIR}/io/IOBuf.cpp
${FOLLY_DIR}/io/IOBufQueue.cpp
# ${FOLLY_DIR}/system/MemoryMapping.cpp
# ${FOLLY_DIR}/experimental/io/HugePages.cpp
${FOLLY_DIR}/File.cpp
${FOLLY_DIR}/Random.cpp
${FOLLY_DIR}/Singleton.cpp
@@ -126,39 +115,39 @@ set(build_DIR ${CMAKE_SOURCE_DIR}/build)
set(libglog_build_DIR ${build_DIR}/libglog/${ANDROID_ABI})
set(doubleconversion_build_DIR ${build_DIR}/doubleconversion/${ANDROID_ABI})
set(libevent_build_DIR ${build_DIR}/libevent/${ANDROID_ABI})
file(MAKE_DIRECTORY ${build_DIR})
add_subdirectory(${GLOG_DIR} ${libglog_build_DIR})
add_subdirectory(${DOUBLECONVERSION_DIR} ${doubleconversion_build_DIR})
#add_subdirectory(${OPENSSL_DIR} ${openssl_build_DIR})
#add_subdirectory(${OPENSSL_DIR} ${crypto_build_DIR})
add_subdirectory(${LIBEVENT_DIR} ${libevent_build_DIR})
# ${LIBEVENT_DIR}
# ${LIBEVENT_DIR}/include/
# ${LIBEVENT_DIR}/../
target_include_directories(${PACKAGE_NAME} PRIVATE
${OPENSSL_DIR}/jni/openssl-android/
${OPENSSL_DIR}/jni/openssl-android/include
${OPENSSL_DIR}/jni/openssl-android/include/openssl
${LIBEVENT_DIR}
${LIBEVENT_DIR}/include/
${LIBEVENT_DIR}/../
${BOOST_DIR}
${BOOST_DIR}/../
${GLOG_DIR}/../
${GLOG_DIR}/glog-0.3.5/src/
${DOUBLECONVERSION_DIR})
set(LIBEXTRA_PATH /Users/prit91/LocalDevTesting/sonar-upstream-proper/Sonar/android/build/third-party-ndk/LibEvent/.externalNativeBuild/cmake/debug/${ANDROID_ABI}/lib)
set(OPENSSL_LINK_DIRECTORIES ${PROJECT_SOURCE_DIR}/../OpenSSL/libs/${ANDROID_ABI}/)
find_path(OPENSSL_LIBRARY libssl.so HINTS ${OPENSSL_LINK_DIRECTORIES})
find_library(CRYPTO_LIBRARY crypto HINTS ${OPENSSL_LINK_DIRECTORIES})
set(LIBEVENT_LINK_DIRECTORIES ${PROJECT_SOURCE_DIR}/../LibEvent/libs/${ANDROID_ABI}/)
find_path(LIBEVENT_LIBRARY libevent.a HINTS ${LIBEVENT_LINK_DIRECTORIES})
#find_library(CRYPTO_LIBRARY crypto HINTS ${OPENSSL_LINK_DIRECTORIES})
#set(LIBEVENT_LINK_DIRECTORIES ${PROJECT_SOURCE_DIR}/../LibEvent/libs/${ANDROID_ABI}/)
#find_path(LIBEVENT_LIBRARY libevent.a HINTS ${LIBEVENT_LINK_DIRECTORIES})
#link_directories(${LINK_DIRECTORIES})
message(STATUS "link_directories:- " ${LIBEVENT_LINK_DIRECTORIES})
install(TARGETS ${PACKAGE_NAME} DESTINATION ./build/)
# ${LIBEVENT_LINK_DIRECTORIES}/libevent.a
target_link_libraries(${PACKAGE_NAME} glog double-conversion ${OPENSSL_LINK_DIRECTORIES}/libssl.so ${OPENSSL_LINK_DIRECTORIES}/libcrypto.so ${LIBEVENT_LINK_DIRECTORIES}/libevent.a)
# event event_core event_extra
target_link_libraries(${PACKAGE_NAME} glog double-conversion ${OPENSSL_LINK_DIRECTORIES}/libssl.so ${OPENSSL_LINK_DIRECTORIES}/libcrypto.so event event_extra event_core)

View File

@@ -34,6 +34,7 @@ android {
dependencies {
implementation project(':glog')
//implementation project(':libevent')
implementation project(':doubleconversion')
implementation project(':openssl')

View File

@@ -8,7 +8,7 @@ android {
minSdkVersion rootProject.minSdkVersion
targetSdkVersion rootProject.targetSdkVersion
ndk {
abiFilters 'arm64-v8a'
abiFilters 'arm64-v8a', 'x86', 'armeabi-v7a'
}
externalNativeBuild {
@@ -27,7 +27,7 @@ android {
}
externalNativeBuild {
cmake {
path 'libevent-release-2.1.8-stable/CMakeLists.txt'
path 'libevent-release-2.1.9/CMakeLists.txt'
}
}
}

Binary file not shown.