1
0
Fork 0
mirror of https://github.com/HenkKalkwater/harbour-sailfin.git synced 2025-09-01 08:52:45 +00:00

Switched to a sane build system (CMake)

This commit is contained in:
Chris Josten 2020-10-25 19:58:02 +01:00
parent 9cfd6d7ee2
commit 228bcfb685
36 changed files with 286 additions and 211 deletions

42
core/CMakeLists.txt Normal file
View file

@ -0,0 +1,42 @@
project(jellyfin-qt)
find_package(Qt5 5.6 COMPONENTS Multimedia Network Qml WebSockets REQUIRED)
include(GNUInstallDirs)
set(jellyfin-qt_SOURCES
src/credentialmanager.cpp
src/jellyfin.cpp
src/jellyfinapiclient.cpp
src/jellyfinapimodel.cpp
src/jellyfindeviceprofile.cpp
src/jellyfinitem.cpp
src/jellyfinplaybackmanager.cpp
src/jellyfinwebsocket.cpp
src/jsonhelper.cpp
src/serverdiscoverymodel.cpp)
set(jellyfin-qt_HEADERS
include/JellyfinQt/credentialmanager.h
include/JellyfinQt/jellyfin.h
include/JellyfinQt/jellyfinapiclient.h
include/JellyfinQt/jellyfinapimodel.h
include/JellyfinQt/jellyfindeviceprofile.h
include/JellyfinQt/jellyfinitem.h
include/JellyfinQt/jellyfinplaybackmanager.h
include/JellyfinQt/jellyfinwebsocket.h
include/JellyfinQt/jsonhelper.h
include/JellyfinQt/serverdiscoverymodel.h)
add_definitions(-DSAILFIN_VERSION=\"${SAILFIN_VERSION}\")
add_library(jellyfin-qt ${jellyfin-qt_SOURCES} ${jellyfin-qt_HEADERS})
target_include_directories(jellyfin-qt
PUBLIC "include"
)
target_link_libraries(jellyfin-qt PUBLIC Qt5::Core Qt5::Multimedia Qt5::Network Qt5::Qml Qt5::WebSockets)
set_target_properties(jellyfin-qt PROPERTIES CXX_VISIBILITY_PRESET default)
install(TARGETS jellyfin-qt
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
export(TARGETS jellyfin-qt FILE JellyfinQtConfig.cmake)