1*4882a593Smuzhiyuncmake_minimum_required(VERSION 3.4.1) 2*4882a593Smuzhiyun 3*4882a593Smuzhiyunproject(rknn_benchmark) 4*4882a593Smuzhiyun 5*4882a593Smuzhiyunset(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}") 6*4882a593Smuzhiyunset(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun# rknn api 9*4882a593Smuzhiyunif(TARGET_SOC STREQUAL "rk356x") 10*4882a593Smuzhiyun set(RKNN_API_PATH ${CMAKE_SOURCE_DIR}/../../runtime/RK356X/${CMAKE_SYSTEM_NAME}/librknn_api) 11*4882a593Smuzhiyunelseif(TARGET_SOC STREQUAL "rk3588") 12*4882a593Smuzhiyun set(RKNN_API_PATH ${CMAKE_SOURCE_DIR}/../../runtime/RK3588/${CMAKE_SYSTEM_NAME}/librknn_api) 13*4882a593Smuzhiyunelse() 14*4882a593Smuzhiyun message(FATAL_ERROR "TARGET_SOC is not set, ref value: rk356x or rk3588") 15*4882a593Smuzhiyunendif() 16*4882a593Smuzhiyun 17*4882a593Smuzhiyunif (CMAKE_SYSTEM_NAME STREQUAL "Android") 18*4882a593Smuzhiyun set(RKNN_RT_LIB ${RKNN_API_PATH}/${CMAKE_ANDROID_ARCH_ABI}/librknnrt.so) 19*4882a593Smuzhiyunelse() 20*4882a593Smuzhiyun if (CMAKE_C_COMPILER MATCHES "aarch64") 21*4882a593Smuzhiyun set(LIB_ARCH aarch64) 22*4882a593Smuzhiyun else() 23*4882a593Smuzhiyun set(LIB_ARCH armhf) 24*4882a593Smuzhiyun endif() 25*4882a593Smuzhiyun set(RKNN_RT_LIB ${RKNN_API_PATH}/${LIB_ARCH}/librknnrt.so) 26*4882a593Smuzhiyunendif() 27*4882a593Smuzhiyuninclude_directories(${RKNN_API_PATH}/include) 28*4882a593Smuzhiyun 29*4882a593Smuzhiyuninclude_directories(${CMAKE_SOURCE_DIR}/../3rdparty) 30*4882a593Smuzhiyun 31*4882a593Smuzhiyunset(CMAKE_INSTALL_RPATH "lib") 32*4882a593Smuzhiyun 33*4882a593Smuzhiyunadd_executable(rknn_benchmark 34*4882a593Smuzhiyun src/rknn_benchmark.cpp 35*4882a593Smuzhiyun src/cnpy/cnpy.cpp 36*4882a593Smuzhiyun) 37*4882a593Smuzhiyun 38*4882a593Smuzhiyuntarget_link_libraries(rknn_benchmark 39*4882a593Smuzhiyun ${RKNN_RT_LIB} 40*4882a593Smuzhiyun ${OpenCV_LIBS} 41*4882a593Smuzhiyun) 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun# install target and libraries 45*4882a593Smuzhiyunset(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/install/rknn_benchmark_${CMAKE_SYSTEM_NAME}) 46*4882a593Smuzhiyuninstall(TARGETS rknn_benchmark DESTINATION ./) 47*4882a593Smuzhiyuninstall(PROGRAMS ${RKNN_RT_LIB} DESTINATION lib) 48