-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcmake.toml
More file actions
80 lines (67 loc) · 1.84 KB
/
cmake.toml
File metadata and controls
80 lines (67 loc) · 1.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# Reference: https://cmkr.build/cmake-toml
[cmake]
version = "3.31"
cmkr-include = "cmkr.cmake"
[project]
name = "SaveManager"
description = "The swiss army knife of save management."
version = "1.5.0"
languages = ["C", "CXX"]
msvc-runtime = "dynamic"
[find-package.CURL]
required = true
[find-package.glad]
required = true
[find-package.glfw3]
required = true
[find-package.libzip]
required = true
[find-package.OpenSSL]
required = true
[find-package.Libssh2]
required = true
[find-package.imgui]
required = true
[find-package.nlohmann_json]
required = true
[find-package.stb]
required = true
[variables]
CMAKE_EXPORT_COMPILE_COMMANDS = true
[target.savemanager]
type = "executable"
sources = [
"src/**.cpp",
"vendor/imgui/imgui_stdlib.cpp",
]
include-directories = [
"src",
"vendor/imgui",
]
precompile-headers = ["src/pch.hpp"]
link-libraries = ["CURL::libcurl", "glfw", "libzip::zip", "Libssh2::libssh2", "OpenSSL::Crypto", "imgui::imgui", "glad::glad", "nlohmann_json::nlohmann_json", "stb::stb", "nfd::nfd"]
compile-features = ["cxx_std_23"]
cmake-before = """
add_subdirectory(vendor/nativefiledialog-extended)
"""
cmake-after = """
find_path(IMGUI_INCLUDE_DIR imgui.h REQUIRED)
cmake_path(GET IMGUI_INCLUDE_DIR PARENT_PATH IMGUI_ROOT_DIR)
target_include_directories(savemanager PRIVATE "${IMGUI_ROOT_DIR}/res/bindings")
target_sources(savemanager PRIVATE
"${IMGUI_ROOT_DIR}/res/bindings/imgui_impl_glfw.cpp"
"${IMGUI_ROOT_DIR}/res/bindings/imgui_impl_opengl3.cpp"
)
target_compile_definitions(savemanager PRIVATE
$<$<CONFIG:Debug>:TRACY_ENABLE>
)
if(NOT WIN32)
find_package(Tracy REQUIRED)
target_link_libraries(savemanager PRIVATE Tracy::TracyClient)
target_compile_definitions(savemanager PRIVATE
$<$<CONFIG:Debug>:TRACY_ENABLE>
)
endif()
"""
[target.savemanager.windows]
link-libraries = ["ws2_32", "shell32"]