DXGI/CMakeLists.txt
2024-09-08 12:21:59 +08:00

44 lines
1.0 KiB
CMake

cmake_minimum_required(VERSION 3.20)
set(PROJECT_NAME DXGI)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_BUILD_TYPE Ninja)
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3")
project(${PROJECT_NAME})
include_directories(ffmpeg-n4.3.2-win64-gpl-shared-4.3\\include)
link_directories(ffmpeg-n4.3.2-win64-gpl-shared-4.3\\lib)
add_executable(
${PROJECT_NAME}
WIN32
DesktopDuplication.cpp
DisplayManager.cpp
DuplicationManager.cpp
ffvideo.cpp
OutputManager.cpp
ThreadManager.cpp
)
target_link_libraries(
${PROJECT_NAME}
avformat
avcodec
avdevice
avfilter
avutil
postproc
swresample
swscale
d3d11
)
# 复制dll
set(DLL_SOURCE_DIR ${CMAKE_SOURCE_DIR}/ffmpeg-n4.3.2-win64-gpl-shared-4.3/bin)
set(DLL_DEST_DIR $<TARGET_FILE_DIR:${PROJECT_NAME}>)
file(GLOB DLL_FILES "${DLL_SOURCE_DIR}/*.dll")
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
${DLL_FILES} ${DLL_DEST_DIR}
)