Add minsizerel

This commit is contained in:
2026-06-28 06:36:42 -04:00
parent 1671aca835
commit 080823e6f5
2 changed files with 48 additions and 1 deletions

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 4.2)
cmake_minimum_required(VERSION 3.28)
project(build_script)
set(CMAKE_CXX_STANDARD 26)

View File

@@ -26,6 +26,7 @@ enum BuildType {
debug,
release,
relwithdeb,
minsizerel,
};
struct Options {
@@ -167,6 +168,20 @@ void checkBuildDirs(const BuildType buildType) {
->info("Creating 'build/relwithdeb' directory.");
createDir("build/relwithdeb");
}
spdlog::get("filesystem")
->debug("Checking 'build/minsizerel' directory.");
if (!std::filesystem::is_directory("build/minsizerel")) {
spdlog::get("filesystem")
->warn("'build/minsizerel' is not a directory. Deleting.");
deleteDir("build/minsizerel");
}
if (!std::filesystem::exists("build/minsizerel")) {
spdlog::get("filesystem")
->info("Creating 'build/minsizerel' directory.");
createDir("build/minsizerel");
};
break;
case debug:
spdlog::get("filesystem")
@@ -209,6 +224,21 @@ void checkBuildDirs(const BuildType buildType) {
->info("Creating 'build/relwithdeb' directory.");
createDir("build/relwithdeb");
};
break;
case minsizerel:
spdlog::get("filesystem")
->debug("Checking 'build/minsizerel' directory.");
if (!std::filesystem::is_directory("build/minsizerel")) {
spdlog::get("filesystem")
->warn("'build/minsizerel' is not a directory. Deleting.");
deleteDir("build/minsizerel");
}
if (!std::filesystem::exists("build/minsizerel")) {
spdlog::get("filesystem")
->info("Creating 'build/minsizerel' directory.");
createDir("build/minsizerel");
};
break;
}
spdlog::get("filesystem")->info("All directories checked.");
@@ -300,6 +330,8 @@ void buildProject(const BuildType buildType) {
buildDir("build/release");
configureDir("build/relwithdeb", "RelWithDeb");
buildDir("build/relwithdeb");
configureDir("build/minsizerel", "MinSizeRel");
buildDir("build/minsizerel");
break;
case debug:
configureDir("build/debug", "Debug");
@@ -313,6 +345,10 @@ void buildProject(const BuildType buildType) {
configureDir("build/relwithdeb", "RelWithDeb");
buildDir("build/relwithdeb");
break;
case minsizerel:
configureDir("build/minsizerel", "MinSizeRel");
buildDir("build/minsizerel");
break;
}
}
@@ -323,6 +359,7 @@ void configureProject(const BuildType buildType) {
configureDir("build/debug", "Debug");
configureDir("build/release", "Release");
configureDir("build/relwithdeb", "RelWithDeb");
configureDir("build/minsizerel", "MinSizeRel");
break;
case debug:
configureDir("build/debug", "Debug");
@@ -333,6 +370,9 @@ void configureProject(const BuildType buildType) {
case relwithdeb:
configureDir("build/RelWithDeb", "RelWithDeb");
break;
case minsizerel:
configureDir("build/minsizerel", "MinSizeRel");
break;
}
}
@@ -344,6 +384,7 @@ void cleanProject(const BuildType buildType) {
cleanDir("build/debug");
cleanDir("build/release");
cleanDir("build/relwithdeb");
cleanDir("build/minsizerel");
break;
case debug:
cleanDir("build/debug");
@@ -354,6 +395,9 @@ void cleanProject(const BuildType buildType) {
case relwithdeb:
cleanDir("build/RelWithDeb");
break;
case minsizerel:
cleanDir("build/minsizerel");
break;
}
}
@@ -371,6 +415,9 @@ void deleteProject(const BuildType buildType) {
case relwithdeb:
deleteDir("build/relwithdeb");
break;
case minsizerel:
deleteDir("build/minsizerel");
break;
}
}