expand cmake presets

This commit is contained in:
jadebenn 2024-04-06 21:50:32 -05:00
parent aa62d357bb
commit 57d0b12f9b
3 changed files with 129 additions and 51 deletions

View File

@ -10,7 +10,7 @@
"name": "default", "name": "default",
"displayName": "Default configure step", "displayName": "Default configure step",
"description": "Use 'build' dir and Unix makefiles", "description": "Use 'build' dir and Unix makefiles",
"binaryDir": "${sourceDir}/build", "binaryDir": "${sourceDir}/build/default",
"generator": "Unix Makefiles" "generator": "Unix Makefiles"
}, },
{ {
@ -41,8 +41,8 @@
"name": "windows-msvc", "name": "windows-msvc",
"displayName": "[Multi] Windows (MSVC)", "displayName": "[Multi] Windows (MSVC)",
"description": "Set architecture to 64-bit (b/c RakNet)", "description": "Set architecture to 64-bit (b/c RakNet)",
"inherits": "default",
"generator": "Visual Studio 17 2022", "generator": "Visual Studio 17 2022",
"binaryDir": "${sourceDir}/build/msvc",
"architecture": { "architecture": {
"value": "x64" "value": "x64"
}, },
@ -81,16 +81,6 @@
"rhs": "Linux" "rhs": "Linux"
} }
}, },
{
"name": "macos-config",
"inherits": "default",
"hidden": true,
"condition": {
"type": "equals",
"lhs": "${hostSystemName}",
"rhs": "Darwin"
}
},
{ {
"name": "linux-clang-debug", "name": "linux-clang-debug",
"inherits": [ "inherits": [
@ -99,7 +89,8 @@
"debug-config" "debug-config"
], ],
"displayName": "[Debug] Linux (Clang)", "displayName": "[Debug] Linux (Clang)",
"description": "Create a debug build using the Clang toolchain for Linux" "description": "Create a debug build using the Clang toolchain for Linux",
"binaryDir": "${sourceDir}/build/clang/debug"
}, },
{ {
"name": "linux-clang-release", "name": "linux-clang-release",
@ -109,7 +100,8 @@
"release-config" "release-config"
], ],
"displayName": "[Release] Linux (Clang)", "displayName": "[Release] Linux (Clang)",
"description": "Create a release build using the Clang toolchain for Linux" "description": "Create a release build using the Clang toolchain for Linux",
"binaryDir": "${sourceDir}/build/clang/release"
}, },
{ {
"name": "linux-gnu-debug", "name": "linux-gnu-debug",
@ -119,7 +111,8 @@
"debug-config" "debug-config"
], ],
"displayName": "[Debug] Linux (GNU)", "displayName": "[Debug] Linux (GNU)",
"description": "Create a debug build using the GNU toolchain for Linux" "description": "Create a debug build using the GNU toolchain for Linux",
"binaryDir": "${sourceDir}/build/gnu/debug"
}, },
{ {
"name": "linux-gnu-release", "name": "linux-gnu-release",
@ -129,25 +122,20 @@
"release-config" "release-config"
], ],
"displayName": "[Release] Linux (GNU)", "displayName": "[Release] Linux (GNU)",
"description": "Create a release build using the GNU toolchain for Linux" "description": "Create a release build using the GNU toolchain for Linux",
"binaryDir": "${sourceDir}/build/gnu/release"
}, },
{ {
"name": "macos-debug", "name": "macos",
"inherits": [ "inherits": "macos-config",
"macos-config", "displayName": "[Multi] MacOS",
"debug-config" "description": "Create a build for MacOS",
], "condition": {
"displayName": "[Debug] MacOS", "type": "equals",
"description": "Create a debug build using MacOS" "lhs": "${hostSystemName}",
}, "rhs": "Darwin"
{ },
"name": "macos-release", "binaryDir": "${sourceDir}/build/macos"
"inherits": [
"macos-config",
"release-config"
],
"displayName": "[Release] MacOS",
"description": "Create a release build using MacOS"
} }
], ],
"buildPresets": [ "buildPresets": [
@ -208,14 +196,14 @@
}, },
{ {
"name": "macos-debug", "name": "macos-debug",
"configurePreset": "macos-debug", "configurePreset": "macos",
"displayName": "[Debug] MacOS", "displayName": "[Debug] MacOS",
"description": "This preset is used to build in debug mode on MacOS", "description": "This preset is used to build in debug mode on MacOS",
"jobs": 2 "jobs": 2
}, },
{ {
"name": "macos-release", "name": "macos-release",
"configurePreset": "macos-release", "configurePreset": "macos",
"displayName": "[Release] MacOS", "displayName": "[Release] MacOS",
"description": "This preset is used to build in release mode on MacOS", "description": "This preset is used to build in release mode on MacOS",
"jobs": 2 "jobs": 2
@ -233,18 +221,32 @@
} }
}, },
{ {
"name": "windows-msvc", "name": "windows-msvc-test",
"inherits": "default", "inherits": "default",
"configurePreset": "windows-msvc", "configurePreset": "windows-msvc",
"displayName": "[Multi] Windows (MSVC)", "hidden": true,
"description": "Runs all tests on a Windows configuration",
"configuration": "Release",
"filter": { "filter": {
"exclude": { "exclude": {
"name": "((example)|(minigzip))+" "name": "((example)|(minigzip))+"
} }
} }
}, },
{
"name": "windows-msvc-debug",
"inherits": "windows-msvc-test",
"configurePreset": "windows-msvc",
"displayName": "[Debug] Windows (MSVC)",
"description": "Runs all tests on a Windows configuration",
"configuration": "Debug"
},
{
"name": "windows-msvc-release",
"inherits": "windows-msvc-test",
"configurePreset": "windows-msvc",
"displayName": "[Release] Windows (MSVC)",
"description": "Runs all tests on a Windows configuration",
"configuration": "Release"
},
{ {
"name": "linux-clang-debug", "name": "linux-clang-debug",
"inherits": "default", "inherits": "default",
@ -280,7 +282,7 @@
{ {
"name": "macos-debug", "name": "macos-debug",
"inherits": "default", "inherits": "default",
"configurePreset": "macos-debug", "configurePreset": "macos",
"displayName": "[Debug] MacOS", "displayName": "[Debug] MacOS",
"description": "Runs all tests on a MacOS configuration", "description": "Runs all tests on a MacOS configuration",
"configuration": "Debug" "configuration": "Debug"
@ -288,7 +290,7 @@
{ {
"name": "macos-release", "name": "macos-release",
"inherits": "default", "inherits": "default",
"configurePreset": "macos-release", "configurePreset": "macos",
"displayName": "[Release] MacOS", "displayName": "[Release] MacOS",
"description": "Runs all tests on a MacOS configuration", "description": "Runs all tests on a MacOS configuration",
"configuration": "Release" "configuration": "Release"
@ -312,9 +314,28 @@
} }
] ]
}, },
{
"name": "windows-msvc-debug",
"displayName": "[Debug] Windows (MSVC)",
"description": "MSVC debug workflow preset for Windows",
"steps": [
{
"type": "configure",
"name": "windows-msvc"
},
{
"type": "build",
"name": "windows-msvc-debug"
},
{
"type": "test",
"name": "windows-msvc-debug"
}
]
},
{ {
"name": "ci-windows-2022", "name": "ci-windows-2022",
"displayName": "Windows CI Workflow", "displayName": "[Release] Windows (MSVC)",
"description": "CI workflow preset for Windows", "description": "CI workflow preset for Windows",
"steps": [ "steps": [
{ {
@ -327,13 +348,32 @@
}, },
{ {
"type": "test", "type": "test",
"name": "windows-msvc" "name": "windows-msvc-release"
}
]
},
{
"name": "linux-gnu-debug",
"displayName": "[Debug] Linux (GNU)",
"description": "GNU debug workflow preset for Linux",
"steps": [
{
"type": "configure",
"name": "linux-gnu-debug"
},
{
"type": "build",
"name": "linux-gnu-debug"
},
{
"type": "test",
"name": "linux-gnu-debug"
} }
] ]
}, },
{ {
"name": "ci-ubuntu-22.04", "name": "ci-ubuntu-22.04",
"displayName": "Ubuntu CI Workflow", "displayName": "[Release] Linux (GNU)",
"description": "CI workflow preset for Ubuntu", "description": "CI workflow preset for Ubuntu",
"steps": [ "steps": [
{ {
@ -350,10 +390,29 @@
} }
] ]
}, },
{
"name": "linux-clang-debug",
"displayName": "[Debug] Linux (Clang)",
"description": "Clang debug workflow preset for Linux",
"steps": [
{
"type": "configure",
"name": "linux-clang-debug"
},
{
"type": "build",
"name": "linux-clang-debug"
},
{
"type": "test",
"name": "linux-clang-debug"
}
]
},
{ {
"name": "linux-clang-release", "name": "linux-clang-release",
"displayName": "Build using Clang on Linux", "displayName": "[Release] Linux (Clang)",
"description": "Clang workflow preset for Linux", "description": "Clang release workflow preset for Linux",
"steps": [ "steps": [
{ {
"type": "configure", "type": "configure",
@ -369,14 +428,33 @@
} }
] ]
}, },
{
"name": "macos-debug",
"displayName": "[Debug] MacOS",
"description": "Release workflow preset for MacOS",
"steps": [
{
"type": "configure",
"name": "macos"
},
{
"type": "build",
"name": "macos-debug"
},
{
"type": "test",
"name": "macos-debug"
}
]
},
{ {
"name": "ci-macos-13", "name": "ci-macos-13",
"displayName": "MacOS CI Workflow", "displayName": "[Release] MacOS",
"description": "CI workflow preset for MacOS", "description": "CI workflow preset for MacOS",
"steps": [ "steps": [
{ {
"type": "configure", "type": "configure",
"name": "macos-release" "name": "macos"
}, },
{ {
"type": "build", "type": "build",

View File

@ -176,7 +176,7 @@ TEST(dCommonTests, AMFDeserializeAMFArrayTest) {
/** /**
* @brief This test checks that if we recieve an unimplemented eAmf * @brief This test checks that if we recieve an unimplemented eAmf
* we correctly throw an error and can actch it. * we correctly throw an error and can actch it.
* Yes this leaks memory. * Yes this leaks memory.
*/ */
TEST(dCommonTests, AMFDeserializeUnimplementedValuesTest) { TEST(dCommonTests, AMFDeserializeUnimplementedValuesTest) {
std::vector<eAmf> unimplementedValues = { std::vector<eAmf> unimplementedValues = {
@ -363,7 +363,7 @@ TEST(dCommonTests, AMFBadConversionTest) {
ASSERT_EQ(result->Get<double>("BehaviorID"), nullptr); ASSERT_EQ(result->Get<double>("BehaviorID"), nullptr);
// Does not exist in the associative portion // Does not exist in the associative portion
ASSERT_EQ(result->Get<nullptr_t>("DOES_NOT_EXIST"), nullptr); ASSERT_EQ(result->Get<std::nullptr_t>("DOES_NOT_EXIST"), nullptr);
result->Push(true); result->Push(true);

View File

@ -78,7 +78,7 @@ TEST(dCommonTests, AMF3InsertionAssociativeTest) {
ASSERT_EQ(array.Get<int32_t>("Integer")->GetValueType(), eAmf::Integer); ASSERT_EQ(array.Get<int32_t>("Integer")->GetValueType(), eAmf::Integer);
ASSERT_EQ(array.Get<double>("Double")->GetValueType(), eAmf::Double); ASSERT_EQ(array.Get<double>("Double")->GetValueType(), eAmf::Double);
ASSERT_EQ(array.GetArray("Array")->GetValueType(), eAmf::Array); ASSERT_EQ(array.GetArray("Array")->GetValueType(), eAmf::Array);
ASSERT_EQ(array.Get<nullptr_t>("Null")->GetValueType(), eAmf::Null); ASSERT_EQ(array.Get<std::nullptr_t>("Null")->GetValueType(), eAmf::Null);
ASSERT_EQ(array.Get<std::vector<uint32_t>>("Undefined")->GetValueType(), eAmf::Undefined); ASSERT_EQ(array.Get<std::vector<uint32_t>>("Undefined")->GetValueType(), eAmf::Undefined);
} }
@ -101,6 +101,6 @@ TEST(dCommonTests, AMF3InsertionDenseTest) {
ASSERT_EQ(array.Get<int32_t>(4)->GetValueType(), eAmf::Integer); ASSERT_EQ(array.Get<int32_t>(4)->GetValueType(), eAmf::Integer);
ASSERT_EQ(array.Get<double>(5)->GetValueType(), eAmf::Double); ASSERT_EQ(array.Get<double>(5)->GetValueType(), eAmf::Double);
ASSERT_EQ(array.GetArray(6)->GetValueType(), eAmf::Array); ASSERT_EQ(array.GetArray(6)->GetValueType(), eAmf::Array);
ASSERT_EQ(array.Get<nullptr_t>(7)->GetValueType(), eAmf::Null); ASSERT_EQ(array.Get<std::nullptr_t>(7)->GetValueType(), eAmf::Null);
ASSERT_EQ(array.Get<std::vector<uint32_t>>(8)->GetValueType(), eAmf::Undefined); ASSERT_EQ(array.Get<std::vector<uint32_t>>(8)->GetValueType(), eAmf::Undefined);
} }