1
Fork 0
mirror of https://github.com/redstrate/Novus.git synced 2025-04-24 21:07:46 +00:00
novus/sagasu/CMakeLists.txt
Joshua Goins 2844231996
Enable Windows and Linux packaging
The Windows version isn't super working yet, but this is a good step forward
2024-04-25 02:31:40 +00:00

57 lines
No EOL
1.7 KiB
CMake

# SPDX-FileCopyrightText: 2023 Joshua Goins <josh@redstrate.com>
# SPDX-License-Identifier: CC0-1.0
add_library(novus-sagasu-static STATIC)
target_sources(novus-sagasu-static
PRIVATE
include/hashdatabase.h
src/hashdatabase.cpp)
target_link_libraries(novus-sagasu-static
PUBLIC
Novus::Common
Physis::Physis
Qt6::Core
Qt6::Sql)
target_include_directories(novus-sagasu-static PRIVATE include)
add_executable(novus-sagasu-indexer)
target_sources(novus-sagasu-indexer PRIVATE src/indexer.cpp)
target_link_libraries(novus-sagasu-indexer
PRIVATE
novus-sagasu-static
Qt6::HttpServer)
target_include_directories(novus-sagasu-indexer PRIVATE include)
add_executable(novus-sagasu)
target_sources(novus-sagasu
PRIVATE
src/main.cpp
src/mainwindow.cpp
src/filetreewindow.cpp
src/filepropertieswindow.cpp
src/filetreemodel.cpp)
target_include_directories(novus-sagasu PRIVATE include)
target_link_libraries(novus-sagasu
PRIVATE
KF6::Archive
novus-sagasu-static
Novus::SklbPart
Novus::CmpPart
Novus::ShpkPart
Novus::HexPart
Novus::ExlPart
Novus::MdlPart
Novus::ExdPart
Novus::TexPart
Novus::DicPart
Physis::Logger
Qt6::Concurrent
Qt6::Network)
install(FILES zone.xiv.sagasu.desktop DESTINATION ${KDE_INSTALL_APPDIR})
install(FILES zone.xiv.sagasu.svg DESTINATION ${KDE_INSTALL_FULL_ICONDIR}/hicolor/scalable/apps)
install(TARGETS novus-sagasu ${KF${QT_MAJOR_VERSION}_INSTALL_TARGETS_DEFAULT_ARGS})
if (WIN32)
install(FILES $<TARGET_RUNTIME_DLLS:novus-sagasu> DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()