cmake_minimum_required(VERSION 3.25) project(tetris C) set(CMAKE_C_STANDARD 23) set(SRC "Main.c" ) add_executable(${PROJECT_NAME} ${SRC}) target_link_libraries(${PROJECT_NAME} PRIVATE ncursesw) target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Walloc-zero -Walloca -Wanalyzer-symbol-too-complex -Wanalyzer-too-complex -Warith-conversion -Warray-bounds=2 -Warray-parameter -Wattribute-alias=2 -Wbad-function-cast -Wbidi-chars=any -Wcast-align=strict -Wcast-qual -Wconversion -Wdate-time -Wdisabled-optimization -Wdouble-promotion -Wduplicated-branches -Wduplicated-cond -Wenum-compare -Wenum-conversion -Werror -Wextra -Wflex-array-member-not-at-end -Wfloat-equal -Wformat-overflow=2 -Wformat-signedness -Wformat-truncation=2 -Wformat=2 -Wframe-larger-than=8388608 -Wimplicit-fallthrough=5 -Winfinite-recursion -Winit-self -Winvalid-pch -Winvalid-utf8 -Wjump-misses-init -Wlarger-than=1073741824 -Wlogical-op -Wmissing-braces -Wmissing-declarations -Wmissing-include-dirs -Wmissing-prototypes -Wmissing-variable-declarations -Wmultichar -Wnarrowing -Wnested-externs -Wnormalized=nfkc -Wnull-dereference -Wold-style-definition -Woverlength-strings -Wredundant-decls -Wshadow -Wshift-overflow=2 -Wsign-conversion -Wstack-protector -Wstack-usage=8388608 -Wstrict-flex-arrays -Wstrict-overflow=2 -Wstrict-prototypes -Wstringop-overflow=4 -Wswitch-enum -Wtrampolines -Wtrivial-auto-var-init -Wundef -Wunreachable-code -Wunused-const-variable=2 -Wuse-after-free=3 -Wvla -Wwrite-strings -fdiagnostics-color=always -fstrict-flex-arrays=3 -pedantic -pedantic-errors )