blob: 383a8eeeb338415ad599dfe5c61e46e9c348f04f [file] [log] [blame]
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(Windows) Unit Test Launch",
"type": "cppvsdbg",
"request": "launch",
"program": "${command:cmake.launchTargetPath}",
"args": [
"--gtest_break_on_failure"
],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [
{
// Make sure we suppress the standard asan warnings, otherwise we will crash fast.
"name": "ASAN_OPTIONS",
"value": "detect_leaks=0:detect_container_overflow=0:detect_odr_violation=0:symbolize=1"
},
{
"name": "PATH",
"value": "${workspaceFolder}\\build\\lib64;${workspaceFolder}\\build\\lib64\\qt\\lib;;${workspaceFolder}\\build\\lib64\\gles_swiftshaders;"
}
],
"externalConsole": true
},
{
"name": "(Windows) Emulator Launch",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceFolder}/build/qemu/windows-x86_64/qemu-system-x86_64",
"args": [
"@P_64",
"-verbose",
"-show-kernel"
],
"stopAtEntry": false,
"cwd": "${workspaceFolder}\\build",
"environment": [
{
"name": "ANDROID_SDK_ROOT",
"value": "C:\\Users\\EmuTest2\\AppData\\Local\\Android\\Sdk"
},
// Make sure we suppress the standard asan warnings, otherwise we will crash fast.
{
"name": "ASAN_OPTIONS",
"value": "detect_leaks=0:detect_container_overflow=0:detect_odr_violation=0:symbolize=1"
},
{
"name": "PATH",
"value": "${workspaceFolder}\\build\\lib64;${workspaceFolder}\\build\\lib64\\qt\\lib;;${workspaceFolder}\\build\\lib64\\gles_swiftshaders;"
}
],
"externalConsole": false
},
{
"name": "(lldb) Debug Cmake Target",
"type": "lldb",
"request": "launch",
// Resolved by CMake Tools:
"program": "${command:cmake.launchTargetPath}",
"cwd": "${workspaceFolder}",
"args": [
// "--verbose"
// "--gtest_repeat=0", "--gtest_break_on_failure"
// "--benchmark_filter=BM_cnv.*"
],
"env": {
// Make sure we suppress the standard asan warnings, otherwise we will crash fast.
"ASAN_OPTIONS": "detect_leaks=0:detect_container_overflow=0:detect_odr_violation=0:symbolize=1"
},
},
{
"name": "(lldb) Debug Emulator",
"type": "lldb",
"request": "launch",
// Resolved by CMake Tools, but likely should point to qemu-system-i386, or qemu-system-x86_64
// As there lldb is not capable of following child processes (like gdb can with follow-fork-mode)
"program": "${command:cmake.launchTargetPath}",
"args": [
"@Q", // Pick the image you would like to use
],
"linux": {
"env": {
// Make sure we suppress the standard asan warnings, otherwise we will crash fast.
"ASAN_OPTIONS": "detect_leaks=0:detect_container_overflow=0:detect_odr_violation=0:symbolize=1",
// Setup the LD_LIBRARY_PATH so we can resolve all the dynamic libs properly.
"LD_LIBRARY_PATH": "./lib64:./lib64/gles_mesa:./lib64/gles_swiftshader:./lib64/qt:./lib64/qt/lib:./lib64/qt/plugins:./lib64/qt/plugins/imageformats:./lib64/qt/plugins/iconengines:./lib64/qt/plugins/platforms:./lib64/qt/plugins/platforminputcontexts:./lib64/vulkan",
// The default location of ANDROID_SDK_ROOT for most, change this as needed.
"ANDROID_SDK_ROOT": "${env:HOME}/Android/Sdk"
},
},
"osx": {
"args": [
"@Q",
"-verbose",
"-feature",
"-HVF",
"-no-window",
"-gpu",
"auto-no-window"
],
"env": {
// Make sure we suppress the standard asan warnings, otherwise we will crash fast.
"ASAN_OPTIONS": "detect_leaks=0:detect_container_overflow=0:detect_odr_violation=0:symbolize=1",
// Setup the LD_LIBRARY_PATH so we can resolve all the dynamic libs properly.
"DYLD_LIBRARY_PATH": "./lib64:./lib64/gles_mesa:./lib64/gles_swiftshader:./lib64/qt:./lib64/qt/lib:./lib64/qt/plugins:./lib64/qt/plugins/imageformats:./lib64/qt/plugins/iconengines:./lib64/qt/plugins/platforms:./lib64/qt/plugins/platforminputcontexts:./lib64/vulkan",
},
},
"postRunCommands": [
"pro handle -p true -s false SIGUSR1",
"pro handle -p true -s false SIGUSR2"
],
"cwd": "${workspaceFolder}/build",
},
{
// You need root access to attach debugger
"name": "(lldb) Debug attach Emulator",
"type": "lldb",
"request": "attach",
// Replace this with the process executable you want to attach to
"pid": 19837, // replace pid with your real pid
// Ignore signal SIGUSR1
"postRunCommands": [
"pro hand -p true -s false SIGUSR1",
"pro hand -p true -s false SIGUSR2",
],
},
{
"name": "(lldb) Debug core dump",
"type": "lldb",
"request": "custom",
"targetCreateCommands": [
"target create -c ${workspaceFolder}/core"
],
}
]
}