tasks.json 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. {
  2. "version": "2.0.0",
  3. "tasks": [
  4. {
  5. "label": "Load Keyboard",
  6. "dependsOrder": "sequence",
  7. "dependsOn":[
  8. "Only Load Keyboard",
  9. "Configure CMake"
  10. ],
  11. "group": {
  12. "kind": "build",
  13. "isDefault": true
  14. }
  15. },
  16. {
  17. "label": "Only Load Keyboard",
  18. "type": "shell",
  19. "command": "cmake -D QMK_KEYBOARD_FOLDER=\"${input:all_keyboards}\" -D QMK_KEYMAP_FOLDER=\"${input:keyboard_keymap}\" -P ${workspaceFolder}/cmake/ConfigureKeyboard.cmake",
  20. "problemMatcher": []
  21. },
  22. {
  23. "label": "Configure CMake",
  24. "type": "cmake",
  25. "command": "configure"
  26. },
  27. {
  28. "label": "Build",
  29. "problemMatcher": [
  30. {
  31. "base": "$gcc",
  32. "fileLocation": ["relative", "${workspaceFolder}/build"]
  33. },
  34. ],
  35. "options": {
  36. "environment": {
  37. "CLICOLOR_FORCE": "1"
  38. }
  39. },
  40. "type": "cmake",
  41. "command": "build",
  42. "targets":[
  43. "${input:keyboard_target}"
  44. ],
  45. "group": {
  46. "kind": "build",
  47. "isDefault": true
  48. },
  49. },
  50. // {
  51. // "label": "Rebuild",
  52. // "problemMatcher": [
  53. // {
  54. // "base": "$gcc",
  55. // "fileLocation": ["relative", "${workspaceFolder}/build"]
  56. // },
  57. // ],
  58. // "options": {
  59. // "environment": {
  60. // "CLICOLOR_FORCE": "1"
  61. // }
  62. // },
  63. // "type": "cmake",
  64. // "command": "cleanRebuild",
  65. // "targets":[
  66. // "${input:keyboard_target}"
  67. // ],
  68. // "group": {
  69. // "kind": "build",
  70. // "isDefault": true
  71. // },
  72. // }
  73. ],
  74. "inputs": [
  75. {
  76. "id": "keyboard_target",
  77. "type": "command",
  78. "command": "shellCommand.execute",
  79. "args": {
  80. "command": "type build\\targets",
  81. "description": "Target:",
  82. "fieldSeparator": "|"
  83. },
  84. },
  85. {
  86. "id": "all_keyboards",
  87. "type": "command",
  88. "command": "shellCommand.execute",
  89. "args": {
  90. "command": "type build\\all_keyboards",
  91. "description": "Keyboard:",
  92. "default": ""
  93. },
  94. },
  95. {
  96. "id": "keymap",
  97. "description": "Keymap:",
  98. "type": "pickString",
  99. "options":[
  100. "default"
  101. ]
  102. },
  103. {
  104. "id": "keyboard_keymap",
  105. "type": "command",
  106. "command": "shellCommand.execute",
  107. "args": {
  108. "command": "cmake -D QMK_KEYBOARD_FOLDER=\"${input:all_keyboards}\" -P ${workspaceFolder}/cmake/GetKeymaps.cmake && type build\\keyboard_keymaps",
  109. "description": "Keymap:",
  110. "default": ""
  111. },
  112. },
  113. ]
  114. }