cmake_minimum_required(VERSION 3.16.0)

set(CMAKE_BUILD_TYPE Release)

# the name of your project
PROJECT(qaplay)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# Find includes in coresponding build directories
set(CMAKE_INCLUDE_CURRENT_DIR ON)

# Instruct CMake to run moc automatically when needed
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

# Find Qt packages
find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS Multimedia)
find_package(Qt6 COMPONENTS Widgets)
find_package(Qt6 COMPONENTS Svg)
find_package(Qt6 COMPONENTS SvgWidgets)

add_executable(qaplay
	src/main.cpp
	src/qaplay.cpp
	src/abouthelp.cpp
	src/m3u.cpp
	src/editplaylist.cpp
	src/setplaylist.cpp
	src/songlist.cpp
	src/structs.cpp
)

qt_finalize_target(qaplay)

target_link_libraries(qaplay PRIVATE
	Qt6::Core
	Qt6::Gui
	Qt6::Multimedia
	Qt6::Widgets
	Qt6::Svg
	Qt6::SvgWidgets	
)

# tell cmake to process CMakeLists.txt in that subdirectory
#add_subdirectory (src)

# if you don't want the full compiler output, remove this line
set(CMAKE_VERBOSE_MAKEFILE ON)

# path for DESTINATION below excl. this INSTALL_PREFIX !
set(CMAKE_INSTALL_PREFIX /usr)

#install program
INSTALL(TARGETS qaplay DESTINATION bin)

#install docs
INSTALL(FILES ChangeLog README DESTINATION share/doc/qaplay)

#install man page
INSTALL(FILES qaplay.1.gz DESTINATION share/man/man1)

#install *.desktop file
#INSTALL(FILES qaplay.desktop DESTINATION share/applications)
#install menu entry
#INSTALL(FILES qaplay DESTINATION share/menu)

#install icons
INSTALL(FILES icons/qaplay.svg DESTINATION share/icons/hicolor/scalable/apps)
INSTALL(DIRECTORY icons/scalable DESTINATION share/qaplay/icons)      # action icons
