27 lines
1.1 KiB
CMake
27 lines
1.1 KiB
CMake
|
|
cmake_minimum_required(VERSION 3.5)
|
||
|
|
project(discord-timestamp)
|
||
|
|
set(CMAKE_CXX_STANDARD 20)
|
||
|
|
|
||
|
|
add_executable(${CMAKE_PROJECT_NAME}
|
||
|
|
src/main.cpp
|
||
|
|
)
|
||
|
|
|
||
|
|
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE lib)
|
||
|
|
|
||
|
|
target_compile_options(${PROJECT_NAME} PRIVATE
|
||
|
|
# Make all warnings into errors
|
||
|
|
-Werror
|
||
|
|
|
||
|
|
# Basic warning flags
|
||
|
|
-Wall # Enable all common warnings
|
||
|
|
-Wextra # Enable extra warnings not covered by -Wall
|
||
|
|
-Wpedantic # Issue warnings demanded by strict ISO C and ISO C++
|
||
|
|
-pedantic-errors # Like -Wpedantic but errors instead of warnings
|
||
|
|
|
||
|
|
# Specific warning categories
|
||
|
|
-Wshadow # Warn when a variable declaration shadows another
|
||
|
|
-Wcast-align # Warn for potential performance problems from memory alignment
|
||
|
|
-Wconversion # Warn on type conversions that may lose data
|
||
|
|
-Wsign-conversion # Warn on sign conversions
|
||
|
|
-Wnull-dereference # Warn about null pointer dereference
|
||
|
|
)
|