{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ {% for executable in project.executables %} {% for build_type in project.build_types %} {% set build_type_name = build_type | capitalize -%} { "label": "{{ executable.name }} {{ build_type_name }}", "type": "shell", "command": "{{ scons_exe | escape_path }} -j{{ nproc }} --build_type={{ build_type }} --unity=disable {{ executable.filename(build_type) | escape_path }} compile_commands.json", "options": { "cwd": "${workspaceFolder}" }, "problemMatcher": [], "group": { "kind": "build", "isDefault": false } }, { "label": "{{ executable.name }} {{ build_type_name }} Clean", "type": "shell", "command": "{{ scons_exe | escape_path }} --build_type={{ build_type }} --unity=disable {{ executable.filename(build_type) | escape_path }} -c", "options": { "cwd": "${workspaceFolder}" }, "problemMatcher": [], "group": { "kind": "build", "isDefault": false } }, {% endfor %} {% endfor %} {% for library in project.libraries %} {% for build_type in project.build_types %} {% set build_type_name = build_type | capitalize -%} { "label": "{{ library.name }} {{ build_type_name }}", "type": "shell", "command": "{{ scons_exe | escape_path }} -j{{ nproc }} --build_type={{ build_type }} --unity=disable {{ library.filename(build_type) | escape_path }} compile_commands.json", "options": { "cwd": "${workspaceFolder}" }, "problemMatcher": [], "group": { "kind": "build", "isDefault": false } }, { "label": "{{ library.name }} {{ build_type_name }} Clean", "type": "shell", "command": "{{ scons_exe | escape_path }} --build_type={{ build_type }} --unity=disable {{ library.filename(build_type) | escape_path }} -c", "options": { "cwd": "${workspaceFolder}" }, "problemMatcher": [], "group": { "kind": "build", "isDefault": false } }, {% endfor %} {% endfor %} ] }