From f720270e89813b12f024ecdcb42a768e3b00222a Mon Sep 17 00:00:00 2001 From: davidontop Date: Thu, 29 Feb 2024 19:57:22 +0100 Subject: [PATCH] optimizations --- CMakeLists.txt | 9 +++++++++ cargo-generate.toml | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 69bfd35..35ddc7a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,6 +3,15 @@ project({{project-name}} LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) +add_compile_options(-Wall -Wextra -Wunused) +{% if optimize != "none" %} +if(CMAKE_BUILD_TYPE MATCHES Release) + add_compile_options({% if optimize == "speed" %}-OFast{% endif %}{% if optimize == "size"%}-Oz{% endif %}) + add_link_options(-flto) +else() + add_compile_options(-Og) +endif() +{% endif %} file(GLOB_RECURSE SOURCES "src/*.cpp" "src/*.h" "src/*.hpp" "src/*.c") {% if crate_type == "bin" %}add_executable(${PROJECT_NAME} ${SOURCES}){% endif %}{% if crate_type == "lib" %}add_library(${PROJECT_NAME} ${SOURCES}){% endif %} diff --git a/cargo-generate.toml b/cargo-generate.toml index 921fde5..6a375ce 100644 --- a/cargo-generate.toml +++ b/cargo-generate.toml @@ -5,6 +5,12 @@ ignore = ["README.md"] pre = ["pre.rhai"] post = ["post.rhai"] +[placeholders.optimize] +type = "string" +prompt = "Optimize for?" +default = "speed" +choices = ["speed", "size", "none"] + [placeholders.license] type = "string" prompt = "License?"