mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-11-25 06:57:28 +00:00
Update to have debug and release builds
This commit is contained in:
parent
e0b54645dc
commit
0509aaf855
9
.github/workflows/build-and-test.yml
vendored
9
.github/workflows/build-and-test.yml
vendored
@ -13,7 +13,8 @@ jobs:
|
|||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
os: [ windows-2022, ubuntu-22.04, macos-13, windows-2022-debug ]
|
os: [ windows-2022, ubuntu-22.04, macos-13 ]
|
||||||
|
cfg: [ debug, release ]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
@ -33,9 +34,9 @@ jobs:
|
|||||||
- name: cmake
|
- name: cmake
|
||||||
uses: lukka/run-cmake@v10
|
uses: lukka/run-cmake@v10
|
||||||
with:
|
with:
|
||||||
configurePreset: "ci-${{matrix.os}}"
|
configurePreset: "ci-${{matrix.os}}-${{matrix.cfg}}"
|
||||||
buildPreset: "ci-${{matrix.os}}"
|
buildPreset: "ci-${{matrix.os}}-${{matrix.cfg}}"
|
||||||
testPreset: "ci-${{matrix.os}}"
|
testPreset: "ci-${{matrix.os}}-${{matrix.cfg}}"
|
||||||
- name: artifacts
|
- name: artifacts
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
|
@ -14,47 +14,80 @@
|
|||||||
"generator": "Unix Makefiles"
|
"generator": "Unix Makefiles"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-ubuntu-22.04",
|
"name": "ci-debug",
|
||||||
|
"displayName": "CI configure step for Debug",
|
||||||
|
"inherits": "default",
|
||||||
|
"cacheVariables": {
|
||||||
|
"CMAKE_BUILD_TYPE": "Debug"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-release",
|
||||||
|
"displayName": "CI configure step for Release",
|
||||||
|
"inherits": "default",
|
||||||
|
"cacheVariables": {
|
||||||
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-ubuntu-22.04-release",
|
||||||
"displayName": "CI configure step for Ubuntu",
|
"displayName": "CI configure step for Ubuntu",
|
||||||
"description": "Same as default, Used in GitHub actions workflow",
|
"description": "Same as default, Used in GitHub actions workflow",
|
||||||
"inherits": "default"
|
"inherits": "ci-release"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-macos-13",
|
"name": "ci-ubuntu-22.04-debug",
|
||||||
|
"displayName": "CI configure step for Ubuntu",
|
||||||
|
"description": "Same as default, Used in GitHub actions workflow",
|
||||||
|
"inherits": "ci-debug"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-macos-13-release",
|
||||||
"displayName": "CI configure step for MacOS",
|
"displayName": "CI configure step for MacOS",
|
||||||
"description": "Same as default, Used in GitHub actions workflow",
|
"description": "Same as default, Used in GitHub actions workflow",
|
||||||
"inherits": "default"
|
"inherits": "ci-release"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-windows-2022",
|
"name": "ci-macos-13-debug",
|
||||||
|
"displayName": "CI configure step for MacOS",
|
||||||
|
"description": "Same as default, Used in GitHub actions workflow",
|
||||||
|
"inherits": "ci-debug"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-windows-2022-release",
|
||||||
"displayName": "CI configure step for Windows",
|
"displayName": "CI configure step for Windows",
|
||||||
"description": "Set architecture to 64-bit (b/c RakNet)",
|
"description": "Set architecture to 64-bit (b/c RakNet)",
|
||||||
"inherits": "default",
|
"inherits": "ci-release",
|
||||||
"generator": "Visual Studio 17 2022",
|
"generator": "Visual Studio 17 2022",
|
||||||
"architecture": {
|
"architecture": {
|
||||||
"value": "x64"
|
"value": "x64"
|
||||||
},
|
|
||||||
"cacheVariables": {
|
|
||||||
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-windows-2022-debug",
|
"name": "ci-windows-2022-debug",
|
||||||
"displayName": "CI configure step for Windows",
|
"displayName": "CI configure step for Windows",
|
||||||
"description": "Set architecture to 64-bit (b/c RakNet)",
|
"description": "Set architecture to 64-bit (b/c RakNet)",
|
||||||
"inherits": "default",
|
"inherits": "ci-debug",
|
||||||
"generator": "Visual Studio 17 2022",
|
"generator": "Visual Studio 17 2022",
|
||||||
"architecture": {
|
"architecture": {
|
||||||
"value": "x64"
|
"value": "x64"
|
||||||
},
|
|
||||||
"cacheVariables": {
|
|
||||||
"CMAKE_BUILD_TYPE": "Debug"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "windows-default",
|
"name": "windows-default-release",
|
||||||
"inherits": "ci-windows-2022",
|
"inherits": "ci-windows-2022-release",
|
||||||
"displayName": "Windows only Configure Settings",
|
"displayName": "Windows only Configure Settings (Release)",
|
||||||
|
"description": "Sets build and install directories",
|
||||||
|
"generator": "Ninja",
|
||||||
|
"architecture": {
|
||||||
|
"value": "x64",
|
||||||
|
"strategy": "external"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "windows-default-debug",
|
||||||
|
"inherits": "ci-windows-2022-debug",
|
||||||
|
"displayName": "Windows only Configure Settings (Debug)",
|
||||||
"description": "Sets build and install directories",
|
"description": "Sets build and install directories",
|
||||||
"generator": "Ninja",
|
"generator": "Ninja",
|
||||||
"architecture": {
|
"architecture": {
|
||||||
@ -71,43 +104,58 @@
|
|||||||
"description": "Default Build",
|
"description": "Default Build",
|
||||||
"jobs": 2
|
"jobs": 2
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "ci-windows-2022",
|
|
||||||
"configurePreset": "ci-windows-2022",
|
|
||||||
"displayName": "Windows CI Build",
|
|
||||||
"description": "This preset is used by the CI build on windows",
|
|
||||||
"configuration": "RelWithDebInfo",
|
|
||||||
"jobs": 2
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "ci-windows-2022-debug",
|
"name": "ci-windows-2022-debug",
|
||||||
"configurePreset": "ci-windows-2022-debug",
|
"configurePreset": "ci-windows-2022-debug",
|
||||||
"displayName": "Windows CI Build",
|
"displayName": "Windows CI Build",
|
||||||
"description": "This preset is used by the CI build on windows for debug",
|
"description": "This preset is used by the CI build on windows",
|
||||||
"configuration": "Debug",
|
"configuration": "RelWithDebInfo",
|
||||||
"jobs": 2
|
"inherits": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-ubuntu-22.04",
|
"name": "ci-windows-2022-release",
|
||||||
"configurePreset": "ci-ubuntu-22.04",
|
"configurePreset": "ci-windows-2022-release",
|
||||||
|
"displayName": "Windows CI Build",
|
||||||
|
"description": "This preset is used by the CI build on windows",
|
||||||
|
"configuration": "RelWithDebInfo",
|
||||||
|
"inherits": "default"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-ubuntu-22.04-debug",
|
||||||
|
"configurePreset": "ci-ubuntu-22.04-debug",
|
||||||
"displayName": "Linux CI Build",
|
"displayName": "Linux CI Build",
|
||||||
"description": "This preset is used by the CI build on linux",
|
"description": "This preset is used by the CI build on linux",
|
||||||
"jobs": 2
|
"inherits": "default"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-macos-13",
|
"name": "ci-ubuntu-22.04-release",
|
||||||
"configurePreset": "ci-macos-13",
|
"configurePreset": "ci-ubuntu-22.04-release",
|
||||||
|
"displayName": "Linux CI Build",
|
||||||
|
"description": "This preset is used by the CI build on linux",
|
||||||
|
"inherits": "default"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-macos-13-debug",
|
||||||
|
"configurePreset": "ci-macos-13-debug",
|
||||||
"displayName": "MacOS CI Build",
|
"displayName": "MacOS CI Build",
|
||||||
"description": "This preset is used by the CI build on MacOS",
|
"description": "This preset is used by the CI build on MacOS",
|
||||||
"jobs": 2
|
"inherits": "default"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-macos-13-release",
|
||||||
|
"configurePreset": "ci-macos-13-release",
|
||||||
|
"displayName": "MacOS CI Build",
|
||||||
|
"description": "This preset is used by the CI build on MacOS",
|
||||||
|
"inherits": "default"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"testPresets": [
|
"testPresets": [
|
||||||
{
|
{
|
||||||
"name": "ci-ubuntu-22.04",
|
"name": "ci-ubuntu-22.04-debug",
|
||||||
"configurePreset": "ci-ubuntu-22.04",
|
"configurePreset": "ci-ubuntu-22.04-debug",
|
||||||
"displayName": "CI Tests on Linux",
|
"displayName": "CI Tests on Linux",
|
||||||
"description": "Runs all tests on a linux configuration",
|
"description": "Runs all tests on a linux configuration",
|
||||||
|
"configuration": "Debug",
|
||||||
"execution": {
|
"execution": {
|
||||||
"jobs": 2
|
"jobs": 2
|
||||||
},
|
},
|
||||||
@ -116,10 +164,24 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-macos-13",
|
"name": "ci-ubuntu-22.04-release",
|
||||||
"configurePreset": "ci-macos-13",
|
"configurePreset": "ci-ubuntu-22.04-release",
|
||||||
|
"displayName": "CI Tests on Linux",
|
||||||
|
"description": "Runs all tests on a linux configuration",
|
||||||
|
"configuration": "RelWithDebInfo",
|
||||||
|
"execution": {
|
||||||
|
"jobs": 2
|
||||||
|
},
|
||||||
|
"output": {
|
||||||
|
"outputOnFailure": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-macos-13-debug",
|
||||||
|
"configurePreset": "ci-macos-13-debug",
|
||||||
"displayName": "CI Tests on MacOS",
|
"displayName": "CI Tests on MacOS",
|
||||||
"description": "Runs all tests on a Mac configuration",
|
"description": "Runs all tests on a Mac configuration",
|
||||||
|
"configuration": "Debug",
|
||||||
"execution": {
|
"execution": {
|
||||||
"jobs": 2
|
"jobs": 2
|
||||||
},
|
},
|
||||||
@ -128,8 +190,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ci-windows-2022",
|
"name": "ci-macos-13-release",
|
||||||
"configurePreset": "ci-windows-2022",
|
"configurePreset": "ci-macos-13-release",
|
||||||
|
"displayName": "CI Tests on MacOS",
|
||||||
|
"description": "Runs all tests on a Mac configuration",
|
||||||
|
"configuration": "RelWithDebInfo",
|
||||||
|
"execution": {
|
||||||
|
"jobs": 2
|
||||||
|
},
|
||||||
|
"output": {
|
||||||
|
"outputOnFailure": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ci-windows-2022-release",
|
||||||
|
"configurePreset": "ci-windows-2022-release",
|
||||||
"displayName": "CI Tests on windows",
|
"displayName": "CI Tests on windows",
|
||||||
"description": "Runs all tests on a windows configuration",
|
"description": "Runs all tests on a windows configuration",
|
||||||
"configuration": "RelWithDebInfo",
|
"configuration": "RelWithDebInfo",
|
||||||
|
@ -15,8 +15,10 @@ endif()
|
|||||||
add_custom_target(conncpp_tests
|
add_custom_target(conncpp_tests
|
||||||
${CMAKE_COMMAND} -E copy $<TARGET_FILE:MariaDB::ConnCpp> ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
${CMAKE_COMMAND} -E copy $<TARGET_FILE:MariaDB::ConnCpp> ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||||
|
|
||||||
|
if(MSVC)
|
||||||
add_custom_target(zlib_tests
|
add_custom_target(zlib_tests
|
||||||
${CMAKE_COMMAND} -E copy $<TARGET_FILE:zlib> ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
${CMAKE_COMMAND} -E copy $<TARGET_FILE:ZLIB::ZLIB> ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
|
||||||
|
endif()
|
||||||
|
|
||||||
# Add the subdirectories
|
# Add the subdirectories
|
||||||
add_subdirectory(dCommonTests)
|
add_subdirectory(dCommonTests)
|
||||||
|
@ -17,8 +17,10 @@ list(APPEND DCOMMONTEST_SOURCES ${DENUMS_TESTS})
|
|||||||
|
|
||||||
# Set our executable
|
# Set our executable
|
||||||
add_executable(dCommonTests ${DCOMMONTEST_SOURCES})
|
add_executable(dCommonTests ${DCOMMONTEST_SOURCES})
|
||||||
add_dependencies(dCommonTests conncpp_tests zlib_tests)
|
add_dependencies(dCommonTests conncpp_tests)
|
||||||
|
if(MSVC)
|
||||||
|
add_dependencies(dCommonTests zlib_tests)
|
||||||
|
endif()
|
||||||
# Apple needs some special linkage for the mariadb connector for tests.
|
# Apple needs some special linkage for the mariadb connector for tests.
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
add_custom_command(TARGET dCommonTests POST_BUILD
|
add_custom_command(TARGET dCommonTests POST_BUILD
|
||||||
|
Loading…
Reference in New Issue
Block a user