cmake_minimum_required(VERSION 3.16)
project(transui VERSION 0.1.0 LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(PkgConfig REQUIRED)
pkg_check_modules(GTK3 REQUIRED IMPORTED_TARGET gtk+-3.0)
pkg_check_modules(CURL REQUIRED IMPORTED_TARGET libcurl)
pkg_check_modules(GSTREAMER REQUIRED IMPORTED_TARGET gstreamer-1.0)
pkg_check_modules(SECRET REQUIRED IMPORTED_TARGET libsecret-1)
pkg_check_modules(JSON_GLIB REQUIRED IMPORTED_TARGET json-glib-1.0)

add_executable(transui src/main.cpp)
target_link_libraries(transui PRIVATE
  PkgConfig::GTK3
  PkgConfig::CURL
  PkgConfig::GSTREAMER
  PkgConfig::SECRET
  PkgConfig::JSON_GLIB
)

install(TARGETS transui RUNTIME DESTINATION bin)
install(FILES data/io.github.transui.Transui.desktop DESTINATION share/applications)

set(CPACK_GENERATOR "DEB")
set(CPACK_PACKAGE_NAME "transui")
set(CPACK_PACKAGE_CONTACT "Transui contributors")
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Transui contributors")
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
set(CPACK_DEBIAN_PACKAGE_DEPENDS "gstreamer1.0-plugins-base, gstreamer1.0-plugins-good, wtype | xdotool")
set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
include(CPack)
