Template
This commit is contained in:
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
/CMakeCache*
|
||||
/build
|
||||
.vscode
|
||||
.DS_Store
|
||||
30
CMakeLists.txt
Normal file
30
CMakeLists.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
|
||||
# === Название проекта ===
|
||||
project(Template VERSION 1.0 LANGUAGES CXX)
|
||||
|
||||
# === Настройки компиляции ===
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
|
||||
# === Пути к исходникам и заголовкам ===
|
||||
set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
||||
set(INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
|
||||
# === Рекурсивный поиск исходников ===
|
||||
file(GLOB_RECURSE SOURCES "${SRC_DIR}/*.cpp")
|
||||
|
||||
# === Создание исполняемого файла ===
|
||||
add_executable(${PROJECT_NAME} ${SOURCES})
|
||||
|
||||
# === Добавляем include-директорию ===
|
||||
target_include_directories(${PROJECT_NAME} PRIVATE ${INCLUDE_DIR})
|
||||
|
||||
# === Рекомендованные предупреждения ===
|
||||
if (MSVC)
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE /W4 /permissive-)
|
||||
else()
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wextra -Wpedantic)
|
||||
endif()
|
||||
|
||||
0
include/EMPTY_FILE
Normal file
0
include/EMPTY_FILE
Normal file
10
src/main.cpp
Normal file
10
src/main.cpp
Normal file
@@ -0,0 +1,10 @@
|
||||
#include <iostream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
cout << "Hello, World!" << endl;
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user