1fa7767c5Sopenharmony_ci 2fa7767c5Sopenharmony_ciinclude(${TOP_DIR}/engine/CMakeLists.txt) 3fa7767c5Sopenharmony_ci 4fa7767c5Sopenharmony_ciset(GTEST_DIRS ${THIRD_PARTY_DIR}/gtest) 5fa7767c5Sopenharmony_ciset(MOCKCPP_DIR ${THIRD_PARTY_DIR}/mockcpp) 6fa7767c5Sopenharmony_ci 7fa7767c5Sopenharmony_ciinclude_directories( 8fa7767c5Sopenharmony_ci ${GTEST_ROOT_DIR}/include 9fa7767c5Sopenharmony_ci ${MOCKCPP_DIR}/include 10fa7767c5Sopenharmony_ci) 11fa7767c5Sopenharmony_ci 12fa7767c5Sopenharmony_ciset(ffmpeg_inc_path ${THIRD_PARTY_DIR}/ffmpeg/windows/include) 13fa7767c5Sopenharmony_ciset(sdl_inc_path ${THIRD_PARTY_DIR}/SDL2.0/include) 14fa7767c5Sopenharmony_ci 15fa7767c5Sopenharmony_ciif (MINGW) 16fa7767c5Sopenharmony_ciset(ffmpeg_lib_path ${THIRD_PARTY_DIR}/ffmpeg/windows/lib) 17fa7767c5Sopenharmony_ciset(sdl_lib_path ${THIRD_PARTY_DIR}/SDL2.0/windows/lib/x64) 18fa7767c5Sopenharmony_ciset(gtest_lib_path ${GTEST_ROOT_DIR}/mingw64/lib/) 19fa7767c5Sopenharmony_cielse() 20fa7767c5Sopenharmony_ci set(ffmpeg_lib_path ${THIRD_PARTY_DIR}/ffmpeg/linux/lib) 21fa7767c5Sopenharmony_ci set(ffmpeg_inc_path ${THIRD_PARTY_DIR}/ffmpeg/linux/include) 22fa7767c5Sopenharmony_ci set(sdl_lib_path ${THIRD_PARTY_DIR}/SDL2.0/linux/lib) 23fa7767c5Sopenharmony_ci set(sdl_inc_path ${THIRD_PARTY_DIR}/SDL2.0/linux/include) 24fa7767c5Sopenharmony_ci set(gtest_lib_path ${THIRD_PARTY_DIR}/gtest/linux/lib) 25fa7767c5Sopenharmony_ci set(curl_lib_path ${THIRD_PARTY_DIR}/curl/lib/linux) 26fa7767c5Sopenharmony_ci message(STATUS "ut ${ffmpeg_lib_path}") 27fa7767c5Sopenharmony_ciendif() 28fa7767c5Sopenharmony_ci 29fa7767c5Sopenharmony_ciinclude_directories( 30fa7767c5Sopenharmony_ci ${ffmpeg_inc_path} 31fa7767c5Sopenharmony_ci ${sdl_inc_path} 32fa7767c5Sopenharmony_ci) 33fa7767c5Sopenharmony_cilink_directories( 34fa7767c5Sopenharmony_ci ${ffmpeg_lib_path} 35fa7767c5Sopenharmony_ci ${sdl_lib_path} 36fa7767c5Sopenharmony_ci ${gtest_lib_path} 37fa7767c5Sopenharmony_ci ${curl_lib_path} 38fa7767c5Sopenharmony_ci) 39fa7767c5Sopenharmony_ci 40fa7767c5Sopenharmony_cifile(GLOB UT_TEST_SRCS ./*.cpp) 41fa7767c5Sopenharmony_ci 42fa7767c5Sopenharmony_cifile(GLOB UT_TEST_PLUGINS ./plugins/*.cpp) 43fa7767c5Sopenharmony_ci 44fa7767c5Sopenharmony_ciset(SRC 45fa7767c5Sopenharmony_ci ${HISTREAMER_SRCS} 46fa7767c5Sopenharmony_ci ${UT_TEST_SRCS} 47fa7767c5Sopenharmony_ci ${UT_TEST_PLUGINS} 48fa7767c5Sopenharmony_ci ${3RDPARTY_SRCS} 49fa7767c5Sopenharmony_ci ../main.cpp 50fa7767c5Sopenharmony_ci ) 51fa7767c5Sopenharmony_ci 52fa7767c5Sopenharmony_ciadd_executable(histreamer_unittest ${SRC}) 53fa7767c5Sopenharmony_ci 54fa7767c5Sopenharmony_cilink_directories( 55fa7767c5Sopenharmony_ci ${MOCKCPP_DIR}/lib/ 56fa7767c5Sopenharmony_ci /usr/local/lib 57fa7767c5Sopenharmony_ci) 58fa7767c5Sopenharmony_ci 59fa7767c5Sopenharmony_citarget_compile_definitions(histreamer_unittest PRIVATE UNIT_TEST) 60fa7767c5Sopenharmony_ci 61fa7767c5Sopenharmony_ciif (MSVC) 62fa7767c5Sopenharmony_ci target_link_libraries(histreamer_unittest 63fa7767c5Sopenharmony_ci ${GTEST_ROOT_DIR}/lib/gtestd.lib 64fa7767c5Sopenharmony_ci ${MOCKCPP_DIR}/lib/mockcpp.lib 65fa7767c5Sopenharmony_ci pthreadVC2.lib 66fa7767c5Sopenharmony_ci ) 67fa7767c5Sopenharmony_cielseif (MINGW) 68fa7767c5Sopenharmony_ci set(ffmpeg_path ${THIRD_PARTY_DIR}/ffmpeg/windows) 69fa7767c5Sopenharmony_ci set(sdl_path ${THIRD_PARTY_DIR}/SDL2.0/windows) 70fa7767c5Sopenharmony_ci target_link_libraries(histreamer_unittest 71fa7767c5Sopenharmony_ci # dl 72fa7767c5Sopenharmony_ci ${sdl_path}/lib/x64/SDL2.lib 73fa7767c5Sopenharmony_ci ${ffmpeg_path}/lib/libavcodec.dll.a 74fa7767c5Sopenharmony_ci ${ffmpeg_path}/lib/libswresample.dll.a 75fa7767c5Sopenharmony_ci ${ffmpeg_path}/lib/libavformat.dll.a 76fa7767c5Sopenharmony_ci ${ffmpeg_path}/lib/libavutil.dll.a 77fa7767c5Sopenharmony_ci ${ffmpeg_path}/lib/libavdevice.dll.a 78fa7767c5Sopenharmony_ci ${ffmpeg_path}/lib/libavfilter.dll.a 79fa7767c5Sopenharmony_ci ${ffmpeg_path}/lib/libswscale.dll.a 80fa7767c5Sopenharmony_ci gtest 81fa7767c5Sopenharmony_ci ${MOCKCPP_DIR}/lib/libmockcpp_mingw8.a 82fa7767c5Sopenharmony_ci ) 83fa7767c5Sopenharmony_ci message(STATUS "CMAKE_BINARY_DIR: ${CMAKE_BINARY_DIR}") 84fa7767c5Sopenharmony_ci file(GLOB ffmpeg_shared_libraries ${ffmpeg_path}/bin/*.dll) 85fa7767c5Sopenharmony_ci file(GLOB sdl_shared_libraries ${sdl_path}/lib/x64/*.dll) 86fa7767c5Sopenharmony_ci file(COPY ${ffmpeg_shared_libraries} DESTINATION ${CMAKE_BINARY_DIR}/_deps/media_foundation-build/test/unittest) 87fa7767c5Sopenharmony_ci file(COPY ${sdl_shared_libraries} DESTINATION ${CMAKE_BINARY_DIR}/_deps/media_foundation-build/test/unittest) 88fa7767c5Sopenharmony_cielse () 89fa7767c5Sopenharmony_ci target_link_libraries(histreamer_unittest 90fa7767c5Sopenharmony_ci dl 91fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/libavformat.a 92fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/libavcodec.a 93fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/libavdevice.a 94fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/libavfilter.a 95fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/libavutil.a 96fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/libswscale.a 97fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/libswresample.a 98fa7767c5Sopenharmony_ci ${ffmpeg_lib_path}/liblzma.a 99fa7767c5Sopenharmony_ci m 100fa7767c5Sopenharmony_ci /usr/lib/x86_64-linux-gnu/libz.so.1 101fa7767c5Sopenharmony_ci SDL2-2.0 102fa7767c5Sopenharmony_ci gtest 103fa7767c5Sopenharmony_ci gtest_main 104fa7767c5Sopenharmony_ci pthread 105fa7767c5Sopenharmony_ci ${MOCKCPP_DIR}/lib/libmockcpp.a 106fa7767c5Sopenharmony_ci curl 107fa7767c5Sopenharmony_ci ) 108fa7767c5Sopenharmony_ciendif () 109fa7767c5Sopenharmony_ciadd_test(Test histreamer_ut) 110fa7767c5Sopenharmony_cienable_testing() 111