From ce51512368a927cebec3895571b11a42c3b12cfd Mon Sep 17 00:00:00 2001 From: Jason Rhinelander Date: Tue, 29 Nov 2022 00:56:18 -0400 Subject: [PATCH] Build libsession-util during session-android build This is definitely easier than needing to muck around with downloading the .a. --- .gitmodules | 3 +++ libsession-util/libsession-util | 1 + libsession-util/src/main/cpp/CMakeLists.txt | 16 +++++++--------- 3 files changed, 11 insertions(+), 9 deletions(-) create mode 100644 .gitmodules create mode 160000 libsession-util/libsession-util diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000..59baf05b7c --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "libsession-util/libsession-util"] + path = libsession-util/libsession-util + url = https://github.com/jagerman/libsession-util.git diff --git a/libsession-util/libsession-util b/libsession-util/libsession-util new file mode 160000 index 0000000000..e52fc314e5 --- /dev/null +++ b/libsession-util/libsession-util @@ -0,0 +1 @@ +Subproject commit e52fc314e5a5659de7c2bb60bb29dc52b80b9ace diff --git a/libsession-util/src/main/cpp/CMakeLists.txt b/libsession-util/src/main/cpp/CMakeLists.txt index c6161ba4f7..4ba26e9f77 100644 --- a/libsession-util/src/main/cpp/CMakeLists.txt +++ b/libsession-util/src/main/cpp/CMakeLists.txt @@ -14,6 +14,9 @@ project("session_util") # You can define multiple libraries, and CMake builds them for you. # Gradle automatically packages shared libraries with your APK. +set(BUILD_SHARED_LIBS ON CACHE BOOL "") +add_subdirectory(../../../libsession-util libsession) + add_library( # Sets the name of the library. session_util @@ -37,13 +40,6 @@ find_library( # Sets the name of the path variable. log) # Add the libsession-util library here -set(distribution_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../../distribution) -add_library(external-libsession-util STATIC IMPORTED) -set_target_properties(external-libsession-util PROPERTIES IMPORTED_LOCATION - ${distribution_DIR}/libsession-util-android/lib/${ANDROID_ABI}/libsession-util.a) - -target_include_directories(session_util PRIVATE - ${distribution_DIR}/libsession-util-android/include) # Specifies libraries CMake should link to your target library. You # can link multiple libraries, such as libraries you define in this @@ -51,7 +47,9 @@ target_include_directories(session_util PRIVATE target_link_libraries( # Specifies the target library. session_util - external-libsession-util + PUBLIC + libsession::config + libsession::crypto # Links the target library to the log library # included in the NDK. - ${log-lib}) \ No newline at end of file + ${log-lib})