Skip to content

Commit a5ff9b7

Browse files
authored
Remove the JNI and adjust the readme (#1258)
* Remove the JNI and adjust the readme * Options->Option
1 parent 4cb8a21 commit a5ff9b7

File tree

15 files changed

+98
-5278
lines changed

15 files changed

+98
-5278
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ jobs:
117117
- name: Build repository
118118
run: |
119119
mkdir build && cd build
120-
cmake .. -DCODE_COVERAGE=TRUE -DBUILD_TEST=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DBUILD_JNI=TRUE -DCMAKE_INSTALL_PREFIX=.
120+
cmake .. -DCODE_COVERAGE=TRUE -DBUILD_TEST=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DCMAKE_INSTALL_PREFIX=.
121121
make
122122
make install
123123
- name: Configure AWS Credentials
@@ -135,7 +135,7 @@ jobs:
135135
- name: Code coverage
136136
run: |
137137
cd build
138-
for test_file in $(find CMakeFiles/KinesisVideoProducer.dir gstkvssink.dir KinesisVideoProducerJNI.dir -name '*.gcno'); do gcov $test_file; done
138+
for test_file in $(find CMakeFiles/KinesisVideoProducer.dir gstkvssink.dir -name '*.gcno'); do gcov $test_file; done
139139
bash <(curl -s https://codecov.io/bash)
140140
141141
address-sanitizer:
@@ -158,7 +158,7 @@ jobs:
158158
- name: Build repository
159159
run: |
160160
mkdir build && cd build
161-
cmake .. -DBUILD_TEST=TRUE -DADDRESS_SANITIZER=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DBUILD_JNI=TRUE -DCMAKE_INSTALL_PREFIX=.
161+
cmake .. -DBUILD_TEST=TRUE -DADDRESS_SANITIZER=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DCMAKE_INSTALL_PREFIX=.
162162
make
163163
make install
164164
- name: Configure AWS Credentials
@@ -194,7 +194,7 @@ jobs:
194194
- name: Build repository
195195
run: |
196196
mkdir build && cd build
197-
cmake .. -DBUILD_TEST=TRUE -DUNDEFINED_BEHAVIOR_SANITIZER=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DBUILD_JNI=TRUE -DCMAKE_INSTALL_PREFIX=.
197+
cmake .. -DBUILD_TEST=TRUE -DUNDEFINED_BEHAVIOR_SANITIZER=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DCMAKE_INSTALL_PREFIX=.
198198
make
199199
make install
200200
- name: Configure AWS Credentials
@@ -257,7 +257,7 @@ jobs:
257257
# run: |
258258
# sudo apt-get install -y libssl-dev libcurl4-openssl-dev liblog4cplus-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base-apps gstreamer1.0-plugins-bad gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools
259259
# mkdir build && cd build
260-
# cmake .. -DBUILD_TEST=TRUE -DTHREAD_SANITIZER=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DBUILD_JNI=TRUE
260+
# cmake .. -DBUILD_TEST=TRUE -DTHREAD_SANITIZER=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE
261261
# make
262262
# ulimit -c unlimited -S
263263
# timeout --signal=SIGABRT 20m ./tst/producerTest
@@ -291,7 +291,7 @@ jobs:
291291
- name: Build repository
292292
run: |
293293
mkdir build && cd build
294-
cmake .. -DBUILD_TEST=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DBUILD_JNI=TRUE -DCMAKE_INSTALL_PREFIX=. -DPARALLEL_BUILD=${{ matrix.parallel-build }}
294+
cmake .. -DBUILD_TEST=TRUE -DBUILD_GSTREAMER_PLUGIN=TRUE -DCMAKE_INSTALL_PREFIX=. -DPARALLEL_BUILD=${{ matrix.parallel-build }}
295295
296296
if [[ "${{ matrix.parallel-build }}" == 'ON' ]]; then
297297
make -j install

.github/workflows/jni.yml

Lines changed: 0 additions & 76 deletions
This file was deleted.

CMake/Dependencies/libkvspic-CMakeLists.txt

Lines changed: 0 additions & 23 deletions
This file was deleted.

CMakeLists.txt

Lines changed: 78 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ include(GNUInstallDirs)
1010

1111
# User Flags
1212
option(BUILD_GSTREAMER_PLUGIN "Build kvssink GStreamer plugin" OFF)
13-
option(BUILD_JNI "Build C++ wrapper for JNI to expose the functionality to Java/Android" OFF)
14-
option(BUILD_JNI_ONLY "Build ONLY the JNI, don't build C++ Producer SDK" OFF)
1513
option(BUILD_STATIC "Build with static linkage" OFF)
1614
option(ADD_MUCLIBC "Add -muclibc c flag" OFF)
1715
option(BUILD_DEPENDENCIES "Whether or not to build depending libraries from source" ON)
@@ -58,81 +56,79 @@ add_definitions(-DKVS_CA_CERT_PATH="${CMAKE_CURRENT_SOURCE_DIR}/certs/cert.pem")
5856
add_definitions(-DCMAKE_DETECTED_CACERT_PATH)
5957

6058

61-
if(NOT BUILD_JNI_ONLY)
62-
if(BUILD_DEPENDENCIES)
63-
if(NOT EXISTS ${KINESIS_VIDEO_OPEN_SOURCE_SRC})
64-
file(MAKE_DIRECTORY ${KINESIS_VIDEO_OPEN_SOURCE_SRC}/local)
65-
endif()
66-
67-
if (NOT OPEN_SRC_INSTALL_PREFIX)
68-
set(OPEN_SRC_INSTALL_PREFIX ${KINESIS_VIDEO_OPEN_SOURCE_SRC}/local)
69-
set(ENV{PKG_CONFIG_PATH}
70-
"$ENV{PKG_CONFIG_PATH}:${OPEN_SRC_INSTALL_PREFIX}/lib/pkgconfig")
71-
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ${OPEN_SRC_INSTALL_PREFIX})
72-
set(ENV{PATH} "$ENV{PATH}:${OPEN_SRC_INSTALL_PREFIX}/bin")
73-
endif()
74-
59+
if(BUILD_DEPENDENCIES)
60+
if(NOT EXISTS ${KINESIS_VIDEO_OPEN_SOURCE_SRC})
61+
file(MAKE_DIRECTORY ${KINESIS_VIDEO_OPEN_SOURCE_SRC}/local)
62+
endif()
7563

76-
message(STATUS "Begin building dependencies.")
77-
if (NOT WIN32)
78-
build_dependency(autoconf)
79-
build_dependency(automake)
80-
endif()
64+
if (NOT OPEN_SRC_INSTALL_PREFIX)
65+
set(OPEN_SRC_INSTALL_PREFIX ${KINESIS_VIDEO_OPEN_SOURCE_SRC}/local)
66+
set(ENV{PKG_CONFIG_PATH}
67+
"$ENV{PKG_CONFIG_PATH}:${OPEN_SRC_INSTALL_PREFIX}/lib/pkgconfig")
68+
set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ${OPEN_SRC_INSTALL_PREFIX})
69+
set(ENV{PATH} "$ENV{PATH}:${OPEN_SRC_INSTALL_PREFIX}/bin")
70+
endif()
8171

82-
if(BUILD_LOG4CPLUS_HOST)
83-
set(BUILD_ARGS -DBUILD_LOG4CPLUS_HOST=${BUILD_LOG4CPLUS_HOST})
84-
build_dependency(log4cplus ${BUILD_ARGS} -DBUILD_STATIC=${BUILD_STATIC})
85-
else()
86-
build_dependency(log4cplus -DBUILD_STATIC=${BUILD_STATIC})
87-
endif()
8872

89-
message(STATUS "Finished building dependencies.")
73+
message(STATUS "Begin building dependencies.")
74+
if (NOT WIN32)
75+
build_dependency(autoconf)
76+
build_dependency(automake)
9077
endif()
9178

92-
set(BUILD_COMMON_LWS
93-
FALSE
94-
CACHE BOOL "Build ProducerC without LWS Support" FORCE)
95-
set(BUILD_COMMON_CURL
96-
TRUE
97-
CACHE BOOL "Build ProducerC with CURL Support" FORCE)
98-
set(DEPENDENCY_DOWNLOAD_PATH ${CMAKE_CURRENT_SOURCE_DIR}/dependency)
99-
if(NOT EXISTS ${DEPENDENCY_DOWNLOAD_PATH})
100-
file(MAKE_DIRECTORY ${DEPENDENCY_DOWNLOAD_PATH})
79+
if(BUILD_LOG4CPLUS_HOST)
80+
set(BUILD_ARGS -DBUILD_LOG4CPLUS_HOST=${BUILD_LOG4CPLUS_HOST})
81+
build_dependency(log4cplus ${BUILD_ARGS} -DBUILD_STATIC=${BUILD_STATIC})
82+
else()
83+
build_dependency(log4cplus -DBUILD_STATIC=${BUILD_STATIC})
10184
endif()
10285

103-
fetch_repo(kvscproducer)
104-
add_subdirectory(${DEPENDENCY_DOWNLOAD_PATH}/libkvscproducer/kvscproducer-src EXCLUDE_FROM_ALL)
105-
############# find dependent libraries ############
86+
message(STATUS "Finished building dependencies.")
87+
endif()
10688

107-
find_package(Threads)
108-
find_package(PkgConfig REQUIRED)
89+
set(BUILD_COMMON_LWS
90+
FALSE
91+
CACHE BOOL "Build ProducerC without LWS Support" FORCE)
92+
set(BUILD_COMMON_CURL
93+
TRUE
94+
CACHE BOOL "Build ProducerC with CURL Support" FORCE)
95+
set(DEPENDENCY_DOWNLOAD_PATH ${CMAKE_CURRENT_SOURCE_DIR}/dependency)
96+
if(NOT EXISTS ${DEPENDENCY_DOWNLOAD_PATH})
97+
file(MAKE_DIRECTORY ${DEPENDENCY_DOWNLOAD_PATH})
98+
endif()
10999

110-
if (OPEN_SRC_INSTALL_PREFIX)
111-
find_package(CURL REQUIRED PATHS ${OPEN_SRC_INSTALL_PREFIX})
112-
else()
113-
find_package(CURL REQUIRED)
114-
endif()
100+
fetch_repo(kvscproducer)
101+
add_subdirectory(${DEPENDENCY_DOWNLOAD_PATH}/libkvscproducer/kvscproducer-src EXCLUDE_FROM_ALL)
102+
############# find dependent libraries ############
115103

116-
set(OPEN_SRC_INCLUDE_DIRS ${OPEN_SRC_INCLUDE_DIRS} ${CURL_INCLUDE_DIRS})
117-
link_directories(${CURL_LIBRARY_DIRS})
104+
find_package(Threads)
105+
find_package(PkgConfig REQUIRED)
118106

119-
if (WIN32)
120-
find_package(Log4cplus
121-
NAMES log4cplus REQUIRED
122-
PATHS ${OPEN_SRC_INSTALL_PREFIX}/lib)
123-
SET(Log4cplus "log4cplus::log4cplus")
124-
else()
125-
find_package(Log4cplus REQUIRED)
126-
include_directories(${LOG4CPLUS_INCLUDE_DIR})
127-
set(Log4cplus ${LOG4CPLUS_LIBRARIES})
128-
endif()
107+
if (OPEN_SRC_INSTALL_PREFIX)
108+
find_package(CURL REQUIRED PATHS ${OPEN_SRC_INSTALL_PREFIX})
109+
else()
110+
find_package(CURL REQUIRED)
111+
endif()
112+
113+
set(OPEN_SRC_INCLUDE_DIRS ${OPEN_SRC_INCLUDE_DIRS} ${CURL_INCLUDE_DIRS})
114+
link_directories(${CURL_LIBRARY_DIRS})
115+
116+
if (WIN32)
117+
find_package(Log4cplus
118+
NAMES log4cplus REQUIRED
119+
PATHS ${OPEN_SRC_INSTALL_PREFIX}/lib)
120+
SET(Log4cplus "log4cplus::log4cplus")
121+
else()
122+
find_package(Log4cplus REQUIRED)
123+
include_directories(${LOG4CPLUS_INCLUDE_DIR})
124+
set(Log4cplus ${LOG4CPLUS_LIBRARIES})
125+
endif()
129126

130-
if (WIN32)
131-
if(EXISTS "C:\\gstreamer\\1.0\\msvc_x86_64\\bin\\pkg-config.exe")
132-
set(PKG_CONFIG_EXECUTABLE "C:\\gstreamer\\1.0\\msvc_x86_64\\bin\\pkg-config.exe")
133-
else()
134-
set(PKG_CONFIG_EXECUTABLE "D:\\gstreamer\\1.0\\msvc_x86_64\\bin\\pkg-config.exe")
135-
endif()
127+
if (WIN32)
128+
if(EXISTS "C:\\gstreamer\\1.0\\msvc_x86_64\\bin\\pkg-config.exe")
129+
set(PKG_CONFIG_EXECUTABLE "C:\\gstreamer\\1.0\\msvc_x86_64\\bin\\pkg-config.exe")
130+
else()
131+
set(PKG_CONFIG_EXECUTABLE "D:\\gstreamer\\1.0\\msvc_x86_64\\bin\\pkg-config.exe")
136132
endif()
137133
endif()
138134

@@ -172,7 +168,6 @@ endif()
172168
############# Build Targets ############
173169
file(GLOB PRODUCER_CPP_SOURCE_FILES "src/*.cpp" "src/common/*.cpp" "src/credential-providers/*.cpp")
174170
file(GLOB GST_PLUGIN_SOURCE_FILES "src/gstreamer/*.cpp" "src/gstreamer/Util/*.cpp")
175-
file(GLOB_RECURSE JNI_SOURCE_FILES "src/JNI/*.cpp")
176171
file(GLOB PIC_HEADERS "${pic_project_SOURCE_DIR}/src/*/include")
177172

178173
include_directories(${PIC_HEADERS})
@@ -182,44 +177,24 @@ include_directories(${KINESIS_VIDEO_OPEN_SOURCE_SRC}/include)
182177
include_directories(${KINESIS_VIDEO_PRODUCER_CPP_SRC}/src)
183178
include_directories(${KINESIS_VIDEO_PRODUCER_CPP_SRC}/src/credential-providers)
184179
include_directories(${KINESIS_VIDEO_PRODUCER_CPP_SRC}/src/common)
185-
include_directories(${KINESIS_VIDEO_PRODUCER_CPP_SRC}/src/JNI/include)
186-
187-
if (NOT BUILD_JNI_ONLY)
188-
install(
189-
DIRECTORY ${KINESIS_VIDEO_PRODUCER_CPP_SRC}/src
190-
DESTINATION .)
191-
192-
add_library(KinesisVideoProducer ${LINKAGE} ${PRODUCER_CPP_SOURCE_FILES})
193-
target_link_libraries(
194-
KinesisVideoProducer
195-
PUBLIC kvsCommonCurl
196-
cproducer
197-
${Log4cplus}
198-
${LIBCURL_LIBRARIES})
199-
200-
install(
201-
TARGETS KinesisVideoProducer
202-
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
203-
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
204-
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
205-
endif()
206-
207-
if (BUILD_JNI_ONLY)
208-
set(DEPENDENCY_DOWNLOAD_PATH ${CMAKE_CURRENT_SOURCE_DIR}/dependency)
209-
set(BUILD_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE})
210-
fetch_repo(kvspic ${BUILD_ARGS})
211-
add_subdirectory("${DEPENDENCY_DOWNLOAD_PATH}/libkvspic/kvspic-src")
212-
file(GLOB PIC_HEADERS "${pic_project_SOURCE_DIR}/src/*/include")
213-
include_directories("${PIC_HEADERS}")
214-
endif()
215180

216-
if(BUILD_JNI OR BUILD_JNI_ONLY)
217-
find_package(JNI REQUIRED)
218-
include_directories(${JNI_INCLUDE_DIRS})
219-
220-
add_library(KinesisVideoProducerJNI SHARED ${JNI_HEADERS} ${JNI_SOURCE_FILES})
221-
target_link_libraries(KinesisVideoProducerJNI kvspic)
222-
endif()
181+
install(
182+
DIRECTORY ${KINESIS_VIDEO_PRODUCER_CPP_SRC}/src
183+
DESTINATION .)
184+
185+
add_library(KinesisVideoProducer ${LINKAGE} ${PRODUCER_CPP_SOURCE_FILES})
186+
target_link_libraries(
187+
KinesisVideoProducer
188+
PUBLIC kvsCommonCurl
189+
cproducer
190+
${Log4cplus}
191+
${LIBCURL_LIBRARIES})
192+
193+
install(
194+
TARGETS KinesisVideoProducer
195+
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
196+
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
197+
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
223198

224199

225200
if(BUILD_GSTREAMER_PLUGIN)

0 commit comments

Comments
 (0)