cmake_minimum_required (VERSION 3.12 FATAL_ERROR)
project(launcher)

# Needed for the Auto Qt to work.
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

find_package(Qt5 REQUIRED COMPONENTS
	Core
	QuickWidgets
	WebChannel
	WebEngine
	WebEngineWidgets
	WebView
	Widgets
)

setUpProjectNew(executable-bundle)

set_property(TARGET ${PROJECT_NAME}
	PROPERTY OUTPUT_NAME "REDlauncher"
)

target_link_libraries(${PROJECT_NAME} PRIVATE ${GalaxyServiceLibraryDeps})
target_link_libraries(${PROJECT_NAME} PUBLIC ${CONAN_LIBS_POCO_NET})
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Core)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Gui)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::QuickWidgets)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::WebChannel)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::WebEngine)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::WebEngineWidgets)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::WebView)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Widgets)

target_link_libraries(${PROJECT_NAME} PRIVATE authentication)
target_link_libraries(${PROJECT_NAME} PRIVATE commandline)
target_link_libraries(${PROJECT_NAME} PRIVATE crash-handling)
target_link_libraries(${PROJECT_NAME} PRIVATE environment)
target_link_libraries(${PROJECT_NAME} PRIVATE fundamentals)
target_link_libraries(${PROJECT_NAME} PRIVATE game-launching)
target_link_libraries(${PROJECT_NAME} PRIVATE launcher-application)
target_link_libraries(${PROJECT_NAME} PRIVATE launcher-metrics)
target_link_libraries(${PROJECT_NAME} PRIVATE launcher-ui)
target_link_libraries(${PROJECT_NAME} PRIVATE logging-red)
target_link_libraries(${PROJECT_NAME} PRIVATE preferences)
target_link_libraries(${PROJECT_NAME} PRIVATE problem-reports)
target_link_libraries(${PROJECT_NAME} PRIVATE threads)
target_link_libraries(${PROJECT_NAME} PRIVATE updater-components)
target_link_libraries(${PROJECT_NAME} PRIVATE web-fundamentals)

#{ Copy Default Configuration For Debug Testing

if (CONAN_SETTINGS_BUILD_TYPE STREQUAL "Debug")
	message("Enabled default debug game directory support.")
	add_custom_command(TARGET ${PROJECT_NAME}
		POST_BUILD
		COMMAND ${CMAKE_COMMAND} -E copy_directory 
			"${CMAKE_CURRENT_SOURCE_DIR}/CP1077/game"
			"${OUTPUT_PATH}"
		COMMENT Copying default game directory into '${OUTPUT_PATH}' ....
	)
endif ()

#}
