mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-03-04 10:48:52 +00:00
example tasks
This commit is contained in:
parent
40a3a431ef
commit
6468360ff1
137
.vscode/tasks.json
vendored
Normal file
137
.vscode/tasks.json
vendored
Normal file
@ -0,0 +1,137 @@
|
|||||||
|
{
|
||||||
|
"version": "2.0.0",
|
||||||
|
"tasks": [
|
||||||
|
{
|
||||||
|
"label": "Load Keyboard & Refresh Outline",
|
||||||
|
"dependsOrder": "sequence",
|
||||||
|
"dependsOn":[
|
||||||
|
"Load Keyboard",
|
||||||
|
"Configure CMake"
|
||||||
|
],
|
||||||
|
"group": {
|
||||||
|
"kind": "build",
|
||||||
|
"isDefault": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Load Keyboard",
|
||||||
|
"type": "shell",
|
||||||
|
"command": "cmake -Bbuild -DQMK_KEYBOARD_FOLDER=${input:keyboard}",
|
||||||
|
"problemMatcher": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Configure CMake",
|
||||||
|
"type": "cmake",
|
||||||
|
"command": "configure"
|
||||||
|
// "command": "${command:cmake.configure}",
|
||||||
|
// "problemMatcher": [],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Build",
|
||||||
|
"problemMatcher": [
|
||||||
|
{
|
||||||
|
"base": "$gcc",
|
||||||
|
"fileLocation": ["relative", "${workspaceRoot}/build"]
|
||||||
|
},
|
||||||
|
],
|
||||||
|
"options": {
|
||||||
|
"environment": {
|
||||||
|
"CLICOLOR_FORCE": "1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "cmake",
|
||||||
|
"command": "build",
|
||||||
|
"targets":[
|
||||||
|
"${input:keyboard_safe}"
|
||||||
|
],
|
||||||
|
"group": {
|
||||||
|
"kind": "build",
|
||||||
|
"isDefault": true
|
||||||
|
},
|
||||||
|
// "type": "shell",
|
||||||
|
// "command": "cmake --build build --target ${input:keyboard_safe}",
|
||||||
|
// "problemMatcher": [],
|
||||||
|
// "group": {
|
||||||
|
// "kind": "build",
|
||||||
|
// "isDefault": true
|
||||||
|
// }
|
||||||
|
// "type": "cmake",
|
||||||
|
// "command": "build",
|
||||||
|
// "targets":[
|
||||||
|
// "${input:keyboard_safe}"
|
||||||
|
// ]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Rebuild",
|
||||||
|
// "type": "process",
|
||||||
|
// "command": "cmake",
|
||||||
|
// "args": [
|
||||||
|
// "--build",
|
||||||
|
// "build",
|
||||||
|
// "--target",
|
||||||
|
// "${input:keyboard_safe}",
|
||||||
|
// "--clean-first"
|
||||||
|
// ],
|
||||||
|
"problemMatcher": [
|
||||||
|
{
|
||||||
|
"base": "$gcc",
|
||||||
|
"fileLocation": ["relative", "${workspaceRoot}/build"]
|
||||||
|
},
|
||||||
|
],
|
||||||
|
"options": {
|
||||||
|
"environment": {
|
||||||
|
"CLICOLOR_FORCE": "1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "cmake",
|
||||||
|
"command": "cleanRebuild",
|
||||||
|
"targets":[
|
||||||
|
"${input:keyboard_safe}"
|
||||||
|
],
|
||||||
|
"group": {
|
||||||
|
"kind": "build",
|
||||||
|
"isDefault": true
|
||||||
|
},
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"inputs": [
|
||||||
|
{
|
||||||
|
"id": "keyboard",
|
||||||
|
"description": "Keyboard:",
|
||||||
|
"type": "pickString",
|
||||||
|
"options":[
|
||||||
|
"planck/rev5",
|
||||||
|
"olkb/planck/rev3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "keyboard_safe",
|
||||||
|
"description": "Keyboard:",
|
||||||
|
"type": "pickString",
|
||||||
|
"options":[
|
||||||
|
"planck_rev5_default",
|
||||||
|
"olkb_planck_rev3_default"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// "type": "command",
|
||||||
|
// "id": "keyboard",
|
||||||
|
// "command": "extension.commandvariable.pickStringRemember",
|
||||||
|
// "args": {
|
||||||
|
// "description": "select an option :",
|
||||||
|
// "options": [
|
||||||
|
// ["always 1", "5000"],
|
||||||
|
// ["always 2", "5100"]
|
||||||
|
// ],
|
||||||
|
// "default": "",
|
||||||
|
// "fileName": "${workspaceFolder}/data/keyboards.json",
|
||||||
|
// "pattern": {
|
||||||
|
// "regexp": "^\\s*(?!#)([^=]+?)\\s*=\\s*(?:(\\{.+\\})|(.+))$",
|
||||||
|
// "label": "$1",
|
||||||
|
// "json": "$2",
|
||||||
|
// "value": "$3"
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
]
|
||||||
|
}
|
@ -24,6 +24,9 @@ resolve_keyboard(${QMK_KEYBOARD_FOLDER} QMK_KEYBOARD_FOLDER_ABS)
|
|||||||
|
|
||||||
set(TEMP_PATH ${QMK_KEYBOARD_FOLDER})
|
set(TEMP_PATH ${QMK_KEYBOARD_FOLDER})
|
||||||
cmake_path(IS_RELATIVE TEMP_PATH IS_KEYBOARD_FOLDER_RELATIVE)
|
cmake_path(IS_RELATIVE TEMP_PATH IS_KEYBOARD_FOLDER_RELATIVE)
|
||||||
|
if(${IS_KEYBOARD_FOLDER_RELATIVE} AND NOT EXISTS ${CMAKE_SOURCE_DIR}/keyboards/${QMK_KEYBOARD_FOLDER})
|
||||||
|
set(IS_KEYBOARD_FOLDER_RELATIVE FALSE)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT DEFINED QMK_KEYMAP_FOLDER)
|
if(NOT DEFINED QMK_KEYMAP_FOLDER)
|
||||||
set(QMK_KEYMAP_FOLDER "default")
|
set(QMK_KEYMAP_FOLDER "default")
|
||||||
@ -31,9 +34,6 @@ endif()
|
|||||||
|
|
||||||
set(TEMP_PATH ${QMK_KEYMAP_FOLDER})
|
set(TEMP_PATH ${QMK_KEYMAP_FOLDER})
|
||||||
cmake_path(IS_RELATIVE TEMP_PATH IS_KEYMAP_FOLDER_RELATIVE)
|
cmake_path(IS_RELATIVE TEMP_PATH IS_KEYMAP_FOLDER_RELATIVE)
|
||||||
if(${IS_KEYBOARD_FOLDER_RELATIVE} AND NOT EXISTS ${CMAKE_SOURCE_DIR}/keyboards/${QMK_KEYMAP_FOLDER})
|
|
||||||
set(IS_KEYBOARD_FOLDER_RELATIVE FALSE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(${IS_KEYBOARD_FOLDER_RELATIVE})
|
if(${IS_KEYBOARD_FOLDER_RELATIVE})
|
||||||
set(QMK_KEYBOARD_CURRENT_FOLDER ${QMK_KEYBOARD_FOLDER})
|
set(QMK_KEYBOARD_CURRENT_FOLDER ${QMK_KEYBOARD_FOLDER})
|
||||||
@ -113,7 +113,7 @@ else(${IS_KEYBOARD_FOLDER_RELATIVE})
|
|||||||
if(EXISTS "${QMK_KEYMAP_FOLDER}/keymap.c")
|
if(EXISTS "${QMK_KEYMAP_FOLDER}/keymap.c")
|
||||||
set(QMK_KEYBOARD_KEYMAP "{QMK_KEYMAP_FOLDER}/keymap.c")
|
set(QMK_KEYBOARD_KEYMAP "{QMK_KEYMAP_FOLDER}/keymap.c")
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "Could not find keymap in keymap folder '${QMK_KEYMAP_FOLDER}'")
|
message(FATAL_ERROR "Could not find keymap in keymap path '${QMK_KEYMAP_FOLDER}'")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -53,7 +53,8 @@ find_program(AVR_UPLOAD
|
|||||||
add_compile_options(
|
add_compile_options(
|
||||||
$<$<COMPILE_LANGUAGE:C>:-std=gnu11>
|
$<$<COMPILE_LANGUAGE:C>:-std=gnu11>
|
||||||
$<$<COMPILE_LANGUAGE:CXX>:-std=gnu++14>
|
$<$<COMPILE_LANGUAGE:CXX>:-std=gnu++14>
|
||||||
# -flto
|
-flto
|
||||||
|
# -mrelax
|
||||||
-Os
|
-Os
|
||||||
-Wall
|
-Wall
|
||||||
-Wstrict-prototypes
|
-Wstrict-prototypes
|
||||||
@ -77,7 +78,11 @@ add_compile_definitions(
|
|||||||
F_CPU=16000000
|
F_CPU=16000000
|
||||||
F_USB=16000000UL
|
F_USB=16000000UL
|
||||||
__AVR_ATmega32U4__
|
__AVR_ATmega32U4__
|
||||||
# LTO_ENABLE
|
LTO_ENABLE
|
||||||
|
)
|
||||||
|
|
||||||
|
add_link_options(
|
||||||
|
-Wl,--gc-sections
|
||||||
)
|
)
|
||||||
|
|
||||||
# include_directories("C:/Users/Jack/Downloads/avr-gcc-12.1.0-x64-windows/avr/include")
|
# include_directories("C:/Users/Jack/Downloads/avr-gcc-12.1.0-x64-windows/avr/include")
|
||||||
@ -92,7 +97,7 @@ macro(add_qmk_executable target_name)
|
|||||||
set(hex_file ${target_name}-${QMK_MCU}.hex)
|
set(hex_file ${target_name}-${QMK_MCU}.hex)
|
||||||
set(lst_file ${target_name}-${QMK_MCU}.lst)
|
set(lst_file ${target_name}-${QMK_MCU}.lst)
|
||||||
|
|
||||||
add_link_options(-Wl,--gc-sections,-Map=${map_file})
|
add_link_options(-Wl,-Map=${map_file})
|
||||||
|
|
||||||
# create elf file
|
# create elf file
|
||||||
add_executable(${elf_file}
|
add_executable(${elf_file}
|
||||||
|
Loading…
Reference in New Issue
Block a user