1
Fork 0
mirror of https://github.com/redstrate/Novus.git synced 2025-04-24 13:07:44 +00:00
novus/CMakeLists.txt
Joshua Goins 4b19b7aeba Improve Sagasu design & indexing
Now the hashes are collected in a central database (location to be
improved) similar to FFXIV Explorer. This database needs to be generated
once and doesn't have to be regen every time Sagasu is opened like
before. This indexer currently is a separate program.

Also adds a feature to extract files from the file tree window.
2023-10-12 19:05:03 -04:00

69 lines
No EOL
1.9 KiB
CMake

# SPDX-FileCopyrightText: 2023 Joshua Goins <josh@redstrate.com>
# SPDX-License-Identifier: CC0-1.0
cmake_minimum_required(VERSION 3.25)
project(Novus VERSION 0.1.0 LANGUAGES CXX)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(QT_MIN_VERSION 6.5)
set(KF_MIN_VERSION 5.240)
find_package(ECM ${KF_MIN_VERSION} REQUIRED NO_MODULE)
list(APPEND CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
include(KDEInstallDirs)
include(ECMFindQmlModule)
include(KDECMakeSettings)
include(KDECompilerSettings NO_POLICY_SCOPE)
include(ECMSetupVersion)
include(ECMGenerateHeaders)
include(ECMPoQmTools)
include(KDEGitCommitHooks)
include(KDEClangFormat)
include(FeatureSummary)
include(FetchContent)
ecm_setup_version(${PROJECT_VERSION}
VARIABLE_PREFIX NOVUS
VERSION_HEADER ${CMAKE_CURRENT_BINARY_DIR}/novus-version.h
)
find_package(Qt6 ${QT_MIN_VERSION} COMPONENTS Core Widgets Concurrent Core5Compat Sql CONFIG REQUIRED)
find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS CoreAddons Config XmlGui)
find_package(Vulkan REQUIRED)
find_package(glm REQUIRED)
if (NOT TARGET glm::glm)
add_library(glm::glm ALIAS glm)
endif()
add_subdirectory(extern)
# macos
if(APPLE)
set(USE_STANDALONE_WINDOW TRUE)
endif()
add_subdirectory(renderer)
add_subdirectory(karuku)
add_subdirectory(armoury)
add_subdirectory(argcracker)
add_subdirectory(sagasu)
#add_subdirectory(bonedecomp) # not yet ported to physis
add_subdirectory(parts)
add_subdirectory(common)
add_subdirectory(mdlviewer)
add_subdirectory(launcher)
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES src/*.cpp src/*.h)
kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)