{
    "version": 3,
    "configurePresets": [
        {
            "name": "usb0",
            "hidden": true,
            "description": "Program over /dev/ttyUSB0",
            "cacheVariables": {
                "AVRDUDE_PORT": "/dev/ttyUSB0"
            }
        },
        {
            "name": "usb1",
            "hidden": true,
            "description": "Program over /dev/ttyUSB1",
            "cacheVariables": {
                "AVRDUDE_PORT": "/dev/ttyUSB1"
            }
        },
        {
            "name": "avr-attiny3216",
            "hidden": true,
            "description": "AVR ATtiny3216 cross-compile toolchain + matching port",
            "toolchainFile": "${sourceDir}/cmake/avr-gcc-toolchain.cmake",
            "cacheVariables": {
                "AVCLAN_TARGET": "avr-attiny3216",
                "FREQSEL": "20MHz",
                "TCB_CLKSEL": "TCB_CLKSEL_CLKDIV1_gc",
                "USART_RXMODE": "USART_RXMODE_CLK2X_gc"
            }
        },
        {
            "name": "debug-base",
            "hidden": true,
            "description": "Debug build settings",
            "generator": "Unix Makefiles",
            "binaryDir": "${sourceDir}/out/build",
            "cacheVariables": {
                "CMAKE_BUILD_TYPE": "Debug"
            }
        },
        {
            "name": "relwithdebinfo-base",
            "hidden": true,
            "description": "RelWithDebInfo build settings",
            "inherits": "debug-base",
            "cacheVariables": {
                "CMAKE_BUILD_TYPE": "RelWithDebInfo"
            }
        },
        {
            "name": "attiny3216-debug-usb0",
            "displayName": "ATtiny3216 Debug (ttyUSB0)",
            "description": "ATtiny3216 Debug build, program over /dev/ttyUSB0",
            "inherits": [
                "avr-attiny3216",
                "debug-base",
                "usb0"
            ]
        },
        {
            "name": "attiny3216-debug-usb1",
            "displayName": "ATtiny3216 Debug (ttyUSB1)",
            "description": "ATtiny3216 Debug build, program over /dev/ttyUSB1",
            "inherits": [
                "avr-attiny3216",
                "debug-base",
                "usb1"
            ]
        },
        {
            "name": "attiny3216-relwithdebinfo-usb0",
            "displayName": "ATtiny3216 RelWithDebInfo (ttyUSB0)",
            "description": "ATtiny3216 RelWithDebInfo build, program over /dev/ttyUSB0",
            "inherits": [
                "avr-attiny3216",
                "relwithdebinfo-base",
                "usb0"
            ]
        },
        {
            "name": "attiny3216-relwithdebinfo-usb1",
            "displayName": "ATtiny3216 RelWithDebInfo (ttyUSB1)",
            "description": "ATtiny3216 RelWithDebInfo build, program over /dev/ttyUSB1",
            "inherits": [
                "avr-attiny3216",
                "relwithdebinfo-base",
                "usb1"
            ]
        }
    ]
}
