[SDK] update ppl.cv to latest version and use it's cmake package (#294)

pull/1/head
lvhan028 2021-12-16 16:33:14 +08:00 committed by GitHub
parent a494a6f6ff
commit f807346592
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 22 additions and 36 deletions

View File

@ -2,49 +2,35 @@
cmake_minimum_required(VERSION 3.14)
project(mmdeploy_cuda_transform_impl CUDA CXX)
if (${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.18.0")
# suppress 'CMAKE_CUDA_ARCHITECTURES' warning
cmake_policy(SET CMP0104 OLD)
endif ()
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.18.0")
# suppress 'CMAKE_CUDA_ARCHITECTURES' warning
cmake_policy(SET CMP0104 OLD)
endif()
find_package(pplcv REQUIRED)
include(${CMAKE_SOURCE_DIR}/cmake/common.cmake)
#include(${CMAKE_SOURCE_DIR}/cmake/cuda.cmake NO_POLICY_SCOPE)
# include(${CMAKE_SOURCE_DIR}/cmake/cuda.cmake NO_POLICY_SCOPE)
set_targets(${PROJECT_NAME} TRANSFORM_OBJ TRANSFORM_STATIC TRANSFORM_SHARED)
set(SRCS
crop_impl.cpp
image2tensor_impl.cpp
load_impl.cpp
normalize_impl.cpp
pad_impl.cpp
resize_impl.cpp
cast.cu
crop.cu
normalize.cu
transpose.cu)
crop_impl.cpp
image2tensor_impl.cpp
load_impl.cpp
normalize_impl.cpp
pad_impl.cpp
resize_impl.cpp
cast.cu
crop.cu
normalize.cu
transpose.cu)
build_object_target(${TRANSFORM_OBJ} "${SRCS}")
find_library(PPLCOMMON_STATIC name pplcommon_static
HINTS ${PPL_CV_CUDA_DIR}/lib
HINTS $ENV{PPL_CV_CUDA_DIR}/lib)
if (NOT PPLCOMMON_STATIC)
message(FATAL_ERROR "not found pplcommon_static library")
endif ()
find_library(PPLCV_STATIC name pplcv_static
HINTS ${PPL_CV_CUDA_DIR}/lib
HINTS $ENV{PPL_CV_CUDA_DIR}/lib)
if (NOT PPLCV_STATIC)
message(FATAL_ERROR "not found pplcv_static library")
endif ()
target_include_directories(${TRANSFORM_OBJ} PUBLIC ${CUDA_TOOLKIT_ROOT_DIR}/include)
target_include_directories(${TRANSFORM_OBJ} PRIVATE ${PPL_CV_CUDA_DIR}/include)
target_link_directories(${TRANSFORM_OBJ} PUBLIC ${PPL_CV_CUDA_DIR}/lib)
target_link_libraries(${TRANSFORM_OBJ} PUBLIC ${PPLCV_STATIC} ${PPLCOMMON_STATIC})
target_link_libraries(${TRANSFORM_OBJ}
PRIVATE mmdeploy::transform::static
PRIVATE mmdeploy::core::static)
target_include_directories(${TRANSFORM_OBJ}
PUBLIC ${CUDA_TOOLKIT_ROOT_DIR}/include)
target_link_libraries(
${TRANSFORM_OBJ} PRIVATE ${PPLCV_LIBRARIES} mmdeploy::transform::static
mmdeploy::core::static)
build_static_target(${TRANSFORM_STATIC} ${TRANSFORM_OBJ} "PUBLIC")
add_library(mmdeploy::transform_impl::cuda::static ALIAS ${TRANSFORM_STATIC})