Add minsizerel
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
cmake_minimum_required(VERSION 4.2)
|
||||
cmake_minimum_required(VERSION 3.28)
|
||||
project(build_script)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 26)
|
||||
|
||||
47
src/main.cpp
47
src/main.cpp
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user