set(DVM_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/dvm)
set(DVM_LIB ${DVM_ROOT}/libdvm.a)
set(ACL_INC_ROOT "${TORCHNPU_THIRD_PARTY_ROOT}/acl/inc")
set(DVM_MAKE_ARGS
PRE_ASCEND=1
DVM_CUSTOM_FLAGS=-I${ACL_INC_ROOT}
)
file(GLOB DVM_DEPENDS
CONFIGURE_DEPENDS
"${DVM_ROOT}/Makefile"
"${DVM_ROOT}/env.sh"
"${DVM_ROOT}/src/*.cc"
"${DVM_ROOT}/src/*.h"
"${DVM_ROOT}/include/*.h"
)
add_custom_command(
OUTPUT ${DVM_LIB}
COMMAND make -C ${DVM_ROOT} ${DVM_MAKE_ARGS} libdvm.a
WORKING_DIRECTORY ${DVM_ROOT}
DEPENDS ${DVM_DEPENDS}
COMMENT "Building DVM static library"
VERBATIM
)
add_custom_target(dvm_build DEPENDS ${DVM_LIB})
add_library(dvm STATIC IMPORTED GLOBAL)
set_target_properties(dvm PROPERTIES IMPORTED_LOCATION ${DVM_LIB})
add_dependencies(dvm dvm_build)