Skip to content

Commit 4576536

Browse files
committed
fix: enable mbedtls
1 parent 17e90d0 commit 4576536

File tree

1 file changed

+27
-24
lines changed

1 file changed

+27
-24
lines changed

app/src/main/jni/CMakeLists.txt

Lines changed: 27 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,11 @@ set(ANDROID_CMAKE_ARGS
1717
-G${CMAKE_GENERATOR}
1818
-Wno-dev)
1919

20-
# Set SRT build directory based on the current ABI
21-
set(SRT_BUILD_DIR ${CMAKE_SOURCE_DIR}/../go/third_party/srt/scripts/build-android/${ANDROID_ABI})
22-
2320
# Build external libraries
2421
ExternalProject_Add(libjpeg-turbo
2522
GIT_REPOSITORY "https://github.com/libjpeg-turbo/libjpeg-turbo.git"
2623
GIT_TAG "3.0.2"
27-
CMAKE_ARGS ${ANDROID_CMAKE_ARGS}
28-
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}
29-
-DENABLE_SHARED=ON
24+
CMAKE_ARGS ${ANDROID_CMAKE_ARGS} -DENABLE_SHARED=ON
3025
BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/lib/libjpeg.so ${CMAKE_BINARY_DIR}/lib/libturbojpeg.so
3126
)
3227

@@ -41,33 +36,41 @@ ExternalProject_Add(libuvc
4136
GIT_REPOSITORY "https://github.com/libuvc/libuvc.git"
4237
GIT_TAG "v0.0.7"
4338
CMAKE_ARGS ${ANDROID_CMAKE_ARGS}
44-
-DCMAKE_MODULE_PATH=${CMAKE_SOURCE_DIR}
45-
-DJPEG_LIBRARY=${CMAKE_BINARY_DIR}/lib/libjpeg.so
46-
-DJPEG_INCLUDE_DIR=${CMAKE_BINARY_DIR}/include
47-
-DLIBUSB_INCLUDE_DIR=${CMAKE_BINARY_DIR}/include/libusb-1.0
48-
-DLIBUSB_LIBRARY=${CMAKE_BINARY_DIR}/lib/libusb-1.0.so
39+
-DCMAKE_MODULE_PATH=${CMAKE_SOURCE_DIR}
40+
-DJPEG_LIBRARY=${CMAKE_BINARY_DIR}/lib/libjpeg.so
41+
-DJPEG_INCLUDE_DIR=${CMAKE_BINARY_DIR}/include
42+
-DLIBUSB_INCLUDE_DIR=${CMAKE_BINARY_DIR}/include/libusb-1.0
43+
-DLIBUSB_LIBRARY=${CMAKE_BINARY_DIR}/lib/libusb-1.0.so
4944
DEPENDS libjpeg-turbo libusb
5045
BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/lib/libuvc.so
5146
)
5247

53-
# Build SRT with OpenSSL disabled for Android
48+
ExternalProject_Add(mbedtls
49+
GIT_REPOSITORY "https://github.com/Mbed-TLS/mbedtls.git"
50+
GIT_TAG "v3.6.3"
51+
CMAKE_ARGS ${ANDROID_CMAKE_ARGS}
52+
-DENABLE_TESTING=OFF
53+
-DENABLE_PROGRAMS=OFF
54+
-DUSE_STATIC_MBEDTLS_LIBRARY=OFF
55+
-DUSE_SHARED_MBEDTLS_LIBRARY=ON
56+
BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/lib/libmbedtls.so ${CMAKE_BINARY_DIR}/lib/libmbedx509.so ${CMAKE_BINARY_DIR}/lib/libmbedcrypto.so
57+
)
58+
5459
ExternalProject_Add(srt
5560
GIT_REPOSITORY "https://github.com/Haivision/srt.git"
5661
GIT_TAG "v1.5.4"
57-
CMAKE_ARGS
58-
${ANDROID_CMAKE_ARGS}
62+
CMAKE_ARGS ${ANDROID_CMAKE_ARGS}
5963
-DENABLE_APPS=OFF
6064
-DENABLE_LOGGING=ON
6165
-DENABLE_STDCXX_SYNC=ON
62-
-DENABLE_ENCRYPTION=OFF
63-
-DCMAKE_INSTALL_PREFIX=${SRT_BUILD_DIR}
64-
# Setup the SRT headers and library for the Go binding
65-
INSTALL_COMMAND
66-
${CMAKE_COMMAND} -E make_directory ${SRT_BUILD_DIR}/include/srt &&
67-
${CMAKE_COMMAND} -E make_directory ${SRT_BUILD_DIR}/lib &&
68-
${CMAKE_COMMAND} -E copy <BINARY_DIR>/version.h ${SRT_BUILD_DIR}/include/srt/ &&
69-
${CMAKE_COMMAND} -E copy_directory <SOURCE_DIR>/srtcore ${SRT_BUILD_DIR}/include/srt &&
70-
${CMAKE_COMMAND} -E copy <BINARY_DIR>/libsrt.so ${SRT_BUILD_DIR}/lib/libsrt.so
66+
-DENABLE_ENCRYPTION=ON
67+
-DUSE_ENCLIB=mbedtls
68+
-DMBEDTLS_INCLUDE_DIRS=${CMAKE_BINARY_DIR}/include
69+
-DMBEDTLS_INCLUDE_DIR=${CMAKE_BINARY_DIR}/include
70+
-DMBEDTLS_LIBRARIES=${CMAKE_BINARY_DIR}/lib/libmbedtls.so
71+
-DMBEDTLS_LIBRARIES=${CMAKE_BINARY_DIR}/lib/libmbedx509.so
72+
-DMBEDTLS_LIBRARIES=${CMAKE_BINARY_DIR}/lib/libmbedcrypto.so
73+
DEPENDS mbedtls
7174
BUILD_BYPRODUCTS ${SRT_BUILD_DIR}/lib/libsrt.so
7275
)
7376

@@ -76,7 +79,7 @@ link_directories(${CMAKE_BINARY_DIR}/lib)
7679
include_directories(${CMAKE_BINARY_DIR}/include)
7780

7881
add_library(kinetic SHARED kinetic.c)
79-
add_dependencies(kinetic libjpeg-turbo libusb libuvc srt)
82+
add_dependencies(kinetic libjpeg-turbo libusb libuvc mbedtls srt)
8083

8184
# Link directly against the libraries
8285
target_link_libraries(kinetic

0 commit comments

Comments
 (0)