commit 7de47f45f66d1916756e3ba67e26abcb6c50e034 Author: Fasterino Date: Wed Oct 22 17:18:48 2025 +0300 Template diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1a118d1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +/CMakeCache* +/build +.vscode +.DS_Store \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..e7c14c5 --- /dev/null +++ b/CMakeLists.txt @@ -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() + diff --git a/include/EMPTY_FILE b/include/EMPTY_FILE new file mode 100644 index 0000000..e69de29 diff --git a/src/main.cpp b/src/main.cpp new file mode 100644 index 0000000..327a111 --- /dev/null +++ b/src/main.cpp @@ -0,0 +1,10 @@ +#include + +using namespace std; + +int main(int argc, char *argv[]) +{ + cout << "Hello, World!" << endl; + + return 0; +} \ No newline at end of file