Refactor project structure
This commit is contained in:
78
modules/ANSFR/CMakeLists.txt
Normal file
78
modules/ANSFR/CMakeLists.txt
Normal file
@@ -0,0 +1,78 @@
|
||||
# ANSFR — Face Recognition DLL (ONNX + TensorRT + FAISS + SQLite)
|
||||
# Explicit source list from original vcxproj
|
||||
set(ANSFR_SOURCES
|
||||
ANSFR.cpp
|
||||
ANSFRCommon.cpp
|
||||
ANSFaceRecognizer.cpp
|
||||
ANSGpuFrameRegistry.cpp
|
||||
FaceDatabase.cpp
|
||||
FaceNet.cpp
|
||||
dllmain.cpp
|
||||
pch.cpp
|
||||
sqlite3.c
|
||||
# Engine sources compiled into ANSFR
|
||||
${CMAKE_SOURCE_DIR}/engines/ONNXEngine/ONNXEngine.cpp
|
||||
${CMAKE_SOURCE_DIR}/engines/OpenVINOEngine/src/faceapp/cnn.cpp
|
||||
${CMAKE_SOURCE_DIR}/engines/OpenVINOEngine/src/utils/args_helper.cpp
|
||||
${CMAKE_SOURCE_DIR}/engines/OpenVINOEngine/src/utils/common.cpp
|
||||
)
|
||||
file(GLOB ANSFR_HEADERS "*.h")
|
||||
|
||||
add_library(ANSFR SHARED ${ANSFR_SOURCES} ${ANSFR_HEADERS})
|
||||
|
||||
target_include_directories(ANSFR PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
target_include_directories(ANSFR PRIVATE
|
||||
${CMAKE_SOURCE_DIR}/engines/ONNXEngine
|
||||
${CMAKE_SOURCE_DIR}/engines/OpenVINOEngine/include
|
||||
${CMAKE_SOURCE_DIR}/engines/TensorRTAPI/include
|
||||
${CMAKE_SOURCE_DIR}/modules/ANSODEngine
|
||||
${SHARED_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
target_include_directories(ANSFR PRIVATE
|
||||
${CMAKE_SOURCE_DIR}/modules/ANSMOT
|
||||
${CMAKE_SOURCE_DIR}/engines/OpenVINOEngine/include/faceapp
|
||||
${ANSLIBS_DIR}/faiss
|
||||
)
|
||||
|
||||
target_link_libraries(ANSFR
|
||||
PUBLIC ANSLibsLoader
|
||||
PRIVATE ANSODEngine
|
||||
PRIVATE ANSLicensingSystem
|
||||
PRIVATE labview
|
||||
PRIVATE spdlog_dep
|
||||
PRIVATE opencv
|
||||
PRIVATE onnxruntime
|
||||
PRIVATE tensorrt
|
||||
PRIVATE openvino
|
||||
PRIVATE faiss
|
||||
PRIVATE mkl
|
||||
PRIVATE boost
|
||||
PRIVATE ANSMOT
|
||||
PRIVATE CUDA::cudart_static
|
||||
PRIVATE CUDA::cublas
|
||||
PRIVATE CUDA::cublasLt
|
||||
PRIVATE nvinfer_10.lib
|
||||
PRIVATE nvonnxparser_10.lib
|
||||
)
|
||||
|
||||
# Boost asio needs full boost install path
|
||||
target_include_directories(ANSFR PRIVATE ${RESEARCH_DIR}/boost_1_88_0)
|
||||
|
||||
target_compile_definitions(ANSFR PRIVATE UNICODE _UNICODE
|
||||
ANSFR_EXPORTS
|
||||
ENGINE_EXPORTS
|
||||
ORT_API_MANUAL_INIT
|
||||
_USRDLL
|
||||
)
|
||||
|
||||
target_precompile_headers(ANSFR PRIVATE pch.h)
|
||||
|
||||
# sqlite3.c is pure C — skip precompiled headers and force C language
|
||||
set_source_files_properties(sqlite3.c PROPERTIES
|
||||
SKIP_PRECOMPILE_HEADERS ON
|
||||
LANGUAGE C
|
||||
)
|
||||
Reference in New Issue
Block a user