add_executable(coop_host WIN32
	src/main.cpp
	src/d3d11_window.cpp
	src/imgui_layer.cpp
	src/debug_overlay.cpp
	src/injection_panel.cpp
	src/capture_panel.cpp
	src/audio_panel.cpp
	src/input/xinput_source.cpp
	src/inject/process_list.cpp
	src/inject/injector.cpp
	src/ipc/ipc_server.cpp
	src/capture/frame_renderer.cpp
	src/capture/window_capture.cpp
	src/audio/audio_loopback.cpp
	src/audio/process_loopback_capture.cpp)

target_include_directories(coop_host PRIVATE src)

# Process-loopback capture (AUDIOCLIENT_ACTIVATION_TYPE_PROCESS_LOOPBACK) needs the
# Windows 10 20H1 (NTDDI_WIN10_CO) headers; raise the target SDK version for it.
target_compile_definitions(coop_host PRIVATE NTDDI_VERSION=0x0A00000B)

target_link_libraries(coop_host PRIVATE
	coop_common
	imgui
	d3d11
	dxgi
	dwmapi
	d3dcompiler
	windowsapp
	xinput
	mmdevapi
	ole32)

set_target_properties(coop_host PROPERTIES OUTPUT_NAME "coop_host")
