Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/workflows/build-targets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -252,8 +252,9 @@ jobs:

- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"

- name: Parallel checkout submodules
run: git submodule update --init --recursive --jobs 6 --depth 1

- name: Configure Linux host
if: ${{ runner.os == 'Linux'}}
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,8 +101,9 @@ jobs:

- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"

- name: Parallel checkout submodules
run: git submodule update --init --recursive --jobs 6 --depth 1

- name: Configure Linux host
if: ${{ runner.os == 'Linux'}}
Expand Down
33 changes: 6 additions & 27 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,9 @@
[submodule "ipfs-lite-cpp"]
path = ipfs-lite-cpp
url = ../ipfs-lite-cpp.git
[submodule "celer-network/pb3-gen-sol"]
path = celer-network/pb3-gen-sol
url = https://github.com/celer-network/pb3-gen-sol.git
[submodule "lmdb"]
path = lmdb
url = ../lmdb.git
[submodule "flutter"]
path = flutter
url = https://github.com/flutter/flutter.git
[submodule "curl-android-ios"]
path = curl-android-ios
url = https://github.com/gcesarmza/curl-android-ios.git
[submodule "grpc"]
path = grpc
url = ../grpc
[submodule "GSL"]
path = GSL
url = ../GSL.git
Expand All @@ -32,14 +20,11 @@
url = https://github.com/gabime/spdlog
[submodule "hat-trie"]
path = hat-trie
url = https://github.com/masterjedy/hat-trie
url = https://github.com/masterjedy/hat-trie.git
[submodule "Boost.DI"]
path = Boost.DI
url = ../Boost.DI
branch = cpp14
[submodule "cpp-ipfs-http-client"]
path = cpp-ipfs-http-client
url = https://github.com/vasild/cpp-ipfs-http-client
[submodule "ipfs-pubsub"]
path = ipfs-pubsub
url = ../ipfs-pubsub.git
Expand All @@ -52,15 +37,9 @@
[submodule "rapidjson"]
path = rapidjson
url = ../rapidjson.git
[submodule "gnostic"]
path = gnostic
url = https://github.com/googleapis/gnostic
[submodule "rocksdb"]
path = rocksdb
url = ../rocksdb.git
[submodule "sr25519-donna"]
path = sr25519-donna
url = ../sr25519-donna.git
[submodule "fmt"]
path = fmt
url = https://github.com/fmtlib/fmt.git
Expand Down Expand Up @@ -117,9 +96,6 @@
[submodule "AsyncIOManager"]
path = AsyncIOManager
url = ../AsyncIOManager.git
[submodule "cryptopp-cmake"]
path = cryptopp-cmake
url = https://github.com/abdes/cryptopp-cmake.git
[submodule "stb"]
path = stb
url = https://github.com/nothings/stb.git
Expand All @@ -133,8 +109,11 @@
path = SQLiteModernCpp
url = ../sqlite_modern_cpp.git
[submodule "json"]
path = json
url = git@github.com:nlohmann/json.git
path = json
url = https://github.com/nlohmann/json.git
[submodule "snappy"]
path = snappy
url = https://github.com/google/snappy.git
[submodule "protobuf"]
path = protobuf
url = https://github.com/protocolbuffers/protobuf.git
2 changes: 1 addition & 1 deletion GTest
Submodule GTest updated 163 files
52 changes: 32 additions & 20 deletions build/Android/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,13 @@ set(_CMAKE_COMMON_CACHE_ARGS ${_CMAKE_COMMON_CACHE_ARGS}
-DOPENSSL_USE_STATIC_LIBS:BOOL=TRUE
)

set(BOOST_ANDROID_B2_EXTRA_FLAGS "")
if(ANDROID_ABI STREQUAL "arm64-v8a")
set(BOOST_ANDROID_B2_EXTRA_FLAGS "architecture=arm,address-model=64,abi=aapcs,binary-format=elf")
elseif(ANDROID_ABI STREQUAL "armeabi-v7a")
set(BOOST_ANDROID_B2_EXTRA_FLAGS "architecture=arm,address-model=32,abi=aapcs,binary-format=elf")
endif()

# Boost
set(BOOST_ROOT "${CMAKE_CURRENT_BINARY_DIR}/boost/build")
ExternalProject_Add(Boost
Expand All @@ -52,28 +59,29 @@ ExternalProject_Add(Boost

CONFIGURE_COMMAND ""
PATCH_COMMAND ""
BUILD_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/Boost-for-Android/build-android.sh ${CMAKE_ANDROID_NDK} --src-dir="${THIRDPARTY_DIR}/boost" --boost="${BOOST_VERSION}" --arch="${ANDROID_ABI}" --target-version="${ANDROID_PLATFORM_LEVEL}" --prefix="${BOOST_ROOT}" --with-libraries="${BOOST_INCLUDE_LIBRARIES_COMMA_SEPARATED}" --extra="--build-type=minimal,visibility=global,cxxstd=${CMAKE_CXX_STANDARD},-d0"
BUILD_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/Boost-for-Android/build-android.sh ${CMAKE_ANDROID_NDK} --src-dir="${THIRDPARTY_DIR}/boost" --boost="${BOOST_VERSION}" --arch="${ANDROID_ABI}" --target-version="${ANDROID_PLATFORM_LEVEL}" --prefix="${BOOST_ROOT}" --with-libraries="${BOOST_INCLUDE_LIBRARIES_COMMA_SEPARATED}" --extra="--build-type=minimal,visibility=global,cxxstd=${CMAKE_CXX_STANDARD},-d0,${BOOST_B2_EXTRA_FLAGS},${BOOST_ANDROID_B2_EXTRA_FLAGS}"
INSTALL_COMMAND ""
UPDATE_COMMAND ""
# TODO: fix this so that ninja parallel build will work
# BUILD_BYPRODUCTS
# "${BOOST_ROOT}/lib/libboost_container.a"
# "${BOOST_ROOT}/lib/libboost_program_options.a"
# "${BOOST_ROOT}/lib/libboost_random.a"
# "${BOOST_ROOT}/lib/libboost_regex.a"
# "${BOOST_ROOT}/lib/libboost_system.a"
# "${BOOST_ROOT}/lib/libboost_prg_exec_monitor.a"
# "${BOOST_ROOT}/lib/libboost_test_exec_monitor.a"
# "${BOOST_ROOT}/lib/libboost_unit_test_framework.a"
# "${BOOST_ROOT}/lib/libboost_timer.a"
# "${BOOST_ROOT}/lib/libboost_date_time.a"
# "${BOOST_ROOT}/lib/libboost_atomic.a"
# "${BOOST_ROOT}/lib/libboost_filesystem.a"
# "${BOOST_ROOT}/lib/libboost_json.a"
# "${BOOST_ROOT}/lib/libboost_thread.a"
# "${BOOST_ROOT}/lib/libboost_chrono.a"
# "${BOOST_ROOT}/lib/libboost_log.a"
# "${BOOST_ROOT}/lib/libboost_log_setup.a"
BUILD_BYPRODUCTS
"${BOOST_ROOT}/lib/libboost_container.a"
"${BOOST_ROOT}/lib/libboost_program_options.a"
"${BOOST_ROOT}/lib/libboost_random.a"
"${BOOST_ROOT}/lib/libboost_regex.a"
"${BOOST_ROOT}/lib/libboost_system.a"
"${BOOST_ROOT}/lib/libboost_prg_exec_monitor.a"
"${BOOST_ROOT}/lib/libboost_test_exec_monitor.a"
"${BOOST_ROOT}/lib/libboost_unit_test_framework.a"
"${BOOST_ROOT}/lib/libboost_timer.a"
"${BOOST_ROOT}/lib/libboost_date_time.a"
"${BOOST_ROOT}/lib/libboost_atomic.a"
"${BOOST_ROOT}/lib/libboost_filesystem.a"
"${BOOST_ROOT}/lib/libboost_json.a"
"${BOOST_ROOT}/lib/libboost_thread.a"
"${BOOST_ROOT}/lib/libboost_chrono.a"
"${BOOST_ROOT}/lib/libboost_log.a"
"${BOOST_ROOT}/lib/libboost_log_setup.a"
"${BOOST_ROOT}/lib/libboost_context.a"
"${BOOST_ROOT}/lib/libboost_coroutine.a"
)

set(Boost_DIR "${BOOST_ROOT}/lib/cmake/Boost-${BOOST_VERSION}")
Expand All @@ -92,6 +100,8 @@ set(boost_log_DIR "${BOOST_ROOT}/lib/cmake/boost_log-${BOOST_VERSION}")
set(boost_log_setup_DIR "${BOOST_ROOT}/lib/cmake/boost_log_setup-${BOOST_VERSION}")
set(boost_container_DIR "${BOOST_ROOT}/lib/cmake/boost_container-${BOOST_VERSION}")
set(boost_unit_test_framework_DIR "${BOOST_ROOT}/lib/cmake/boost_unit_test_framework-${BOOST_VERSION}")
set(boost_context_DIR "${BOOST_ROOT}/lib/cmake/boost_context-${BOOST_VERSION}")
set(boost_coroutine_DIR "${BOOST_ROOT}/lib/cmake/boost_coroutine-${BOOST_VERSION}")

set(_BOOST_CACHE_ARGS
-DBOOST_ROOT:PATH=${BOOST_ROOT}
Expand All @@ -115,6 +125,8 @@ set(_BOOST_CACHE_ARGS
-Dboost_system_DIR:PATH=${boost_system_DIR}
-Dboost_thread_DIR:PATH=${boost_thread_DIR}
-Dboost_unit_test_framework_DIR:PATH=${boost_unit_test_framework_DIR}
-Dboost_context_DIR:PATH=${boost_context_DIR}
-Dboost_coroutine_DIR:PATH=${boost_coroutine_DIR}
-DBoost_COMPILER:STRING=clang
)

Expand Down
3 changes: 2 additions & 1 deletion build/CommonCompilerOptions.CMake
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,12 @@ if(NOT EXISTS "${THIRDPARTY_DIR}/build")
endif()

# Boost settings
set(BOOST_INCLUDE_LIBRARIES container date_time filesystem json log program_options random regex system test timer)
set(BOOST_INCLUDE_LIBRARIES container date_time filesystem json log program_options random regex system test timer context coroutine)

list(JOIN BOOST_INCLUDE_LIBRARIES "," BOOST_INCLUDE_LIBRARIES_COMMA_SEPARATED)
separate_arguments(BOOST_B2_FLAGS NATIVE_COMMAND "${CMAKE_CXX_FLAGS}")
list(APPEND BOOST_B2_FLAGS "-fPIC")
set(BOOST_B2_EXTRA_FLAGS "context-impl=fcontext")
list(TRANSFORM BOOST_B2_FLAGS PREPEND "cxxflags=")

# OpenSSL
Expand Down
Loading
Loading