aboutsummaryrefslogtreecommitdiff
path: root/cmake.toml
blob: 3774c88d5e2bdef1ef2ade5c0cb0b6b0367803b6 (plain) (blame)
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
# Reference: https://build-cpp.github.io/cmkr/cmake-toml

[cmake]
version = "3.13.4"
cmkr-include = "cmake/cmkr/cmkr.cmake"

[project]
name = "viv"
version = "0.1.0"
description = "🎀 toy gemini client in ansi c (c99)"
languages = ["C"]

[conditions]
curses = "CURSES_FOUND AND CURSES_HAVE_NCURSES_H"

[find-package]
OpenSSL = { required = true }
Curses = { required = true }

[target.viv]
type = "executable"
sources = ["viv/*.c"]
private-include-directories = ["include/", "deps/"]
properties = { CMAKE_C_STANDARD_REQUIRED = true, CMAKE_C_STANDARD = "99", CMAKE_C_EXTENSIONS = false, CURSES_NEED_NCURSES = true }
compile-options = ["-std=c99", "-Wall", "-Wextra", "-Werror=pedantic", "-Wno-unused-function", "-Wpedantic", "-pedantic-errors", "-march=native", "-D_XOPEN_SOURCE=500"] # -03, -fsanitize=address
link-options = ["-fsanitize=address"]
link-libraries = ["OpenSSL::SSL", "OpenSSL::Crypto"]
curses.private-include-directories = ["ncurses", "menu"]
curses.private-link-libraries = ["ncurses", "menu"]