mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-07-19 14:12:01 +00:00
generate compile_commands.json and configure clangd
This commit is contained in:
parent
4d1ad14596
commit
cfde338998
@ -61,7 +61,7 @@ macro(add_keyboard KEYBOARD_FOLDER KEYMAP_FOLDER)
|
|||||||
STAMP_DIR ${CMAKE_SOURCE_DIR}/build/stamp
|
STAMP_DIR ${CMAKE_SOURCE_DIR}/build/stamp
|
||||||
LOG_DIR ${CMAKE_SOURCE_DIR}/build/log
|
LOG_DIR ${CMAKE_SOURCE_DIR}/build/log
|
||||||
INSTALL_DIR ${CMAKE_SOURCE_DIR}/build/install
|
INSTALL_DIR ${CMAKE_SOURCE_DIR}/build/install
|
||||||
INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "nothing to install" #copy ${CMAKE_SOURCE_DIR}/build/keyboards/${KEYBOARD_FOLDER}/Build/* ${CMAKE_SOURCE_DIR}/build/keyboards/${KEYBOARD_FOLDER}/Install/
|
INSTALL_COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/build/${TARGET_NAME}.hex ${CMAKE_SOURCE_DIR}/${TARGET_NAME}.hex
|
||||||
# this seems to work well for all systems so far - not sure if it'd be useful to customize
|
# this seems to work well for all systems so far - not sure if it'd be useful to customize
|
||||||
CMAKE_GENERATOR "Unix Makefiles"
|
CMAKE_GENERATOR "Unix Makefiles"
|
||||||
CMAKE_ARGS
|
CMAKE_ARGS
|
||||||
@ -71,6 +71,13 @@ macro(add_keyboard KEYBOARD_FOLDER KEYMAP_FOLDER)
|
|||||||
-DQMK_KEYMAP_FOLDER=${KEYMAP_FOLDER}
|
-DQMK_KEYMAP_FOLDER=${KEYMAP_FOLDER}
|
||||||
-DTARGET_NAME=${TARGET_NAME}
|
-DTARGET_NAME=${TARGET_NAME}
|
||||||
)
|
)
|
||||||
|
ExternalProject_Add_Step(${TARGET_NAME} copy_compile_commands
|
||||||
|
DEPENDEES configure
|
||||||
|
DEPENDERS build
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/build/keyboards/${TARGET_NAME}/compile_commands.json ${CMAKE_SOURCE_DIR}/compile_commands.json
|
||||||
|
# BYPRODUCTS ${CMAKE_SOURCE_DIR}/compile_commands.json
|
||||||
|
ALWAYS TRUE
|
||||||
|
)
|
||||||
|
|
||||||
# file(APPEND "${CMAKE_SOURCE_DIR}/build/targets" "${TARGET_NAME}|${KEYBOARD_NAME} with ${KEYMAP_FOLDER}|${KEYBOARD_FOLDER}|Made by: ${MANUFACTURER}\n")
|
# file(APPEND "${CMAKE_SOURCE_DIR}/build/targets" "${TARGET_NAME}|${KEYBOARD_NAME} with ${KEYMAP_FOLDER}|${KEYBOARD_FOLDER}|Made by: ${MANUFACTURER}\n")
|
||||||
endmacro(add_keyboard)
|
endmacro(add_keyboard)
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
set(CMAKE_EXPORT_COMPILE_COMMANDS on)
|
||||||
|
|
||||||
include(ResolveToolchain)
|
include(ResolveToolchain)
|
||||||
|
|
||||||
set(QMK_TOOLCHAIN "arm-none-eabi")
|
set(QMK_TOOLCHAIN "arm-none-eabi")
|
||||||
|
@ -4,6 +4,8 @@
|
|||||||
# @author Natesh Narain
|
# @author Natesh Narain
|
||||||
# @since Feb 06 2016
|
# @since Feb 06 2016
|
||||||
|
|
||||||
|
set(CMAKE_EXPORT_COMPILE_COMMANDS on)
|
||||||
|
|
||||||
include(ResolveToolchain)
|
include(ResolveToolchain)
|
||||||
|
|
||||||
set(QMK_TOOLCHAIN "avr")
|
set(QMK_TOOLCHAIN "avr")
|
||||||
@ -127,6 +129,11 @@ macro(add_qmk_executable target_name)
|
|||||||
# LINK_FLAGS "-mmcu=${QMK_MCU} ${LINK_OPTIONS}"
|
# LINK_FLAGS "-mmcu=${QMK_MCU} ${LINK_OPTIONS}"
|
||||||
# )
|
# )
|
||||||
|
|
||||||
|
# add_custom_target(compileOptions
|
||||||
|
# COMMAND cmake -P ${CMAKE_SOURCE_DIR}/cmake/WriteCompileOptions.cmake
|
||||||
|
# COMMENT "Writing compile_flags.txt"
|
||||||
|
# )
|
||||||
|
|
||||||
# generate the lst file
|
# generate the lst file
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${lst_file}
|
OUTPUT ${lst_file}
|
||||||
@ -161,14 +168,12 @@ macro(add_qmk_executable target_name)
|
|||||||
|
|
||||||
# build the intel hex file for the device
|
# build the intel hex file for the device
|
||||||
add_custom_target(${target_name} ALL
|
add_custom_target(${target_name} ALL
|
||||||
DEPENDS ${hex_file} ${lst_file} "print-size-${elf_file}" "print-size-${hex_file}" copy_hex
|
DEPENDS ${hex_file} ${lst_file} "print-size-${elf_file}" "print-size-${hex_file}" copy_hex
|
||||||
)
|
)
|
||||||
|
|
||||||
set_target_properties(${target_name}
|
set_target_properties(${target_name}
|
||||||
PROPERTIES OUTPUT_NAME ${elf_file}
|
PROPERTIES OUTPUT_NAME ${elf_file}
|
||||||
)
|
)
|
||||||
|
|
||||||
# list(JOIN COMPILE_OPTIONS "\n" COMPILE_FLAGS_TXT)
|
|
||||||
# file(WRITE ${CMAKE_SOURCE_DIR}/compile_flags.txt ${COMPILE_FLAGS_TXT})
|
|
||||||
|
|
||||||
endmacro(add_qmk_executable)
|
endmacro(add_qmk_executable)
|
||||||
|
@ -1,61 +0,0 @@
|
|||||||
-std=c11
|
|
||||||
-Iquantum
|
|
||||||
-Itoolchains\avr-gcc-12.1.0-x64-windows\avr\include
|
|
||||||
-DARCH=ARCH_AVR8
|
|
||||||
-DBACKLIGHT_ENABLE
|
|
||||||
-DBACKLIGHT_PIN=B7
|
|
||||||
-DBOARD=BOARD_NONE
|
|
||||||
-DDEVICE_VER=0x3
|
|
||||||
-DFIXED_CONTROL_ENDPOINT_SIZE=8
|
|
||||||
-DFIXED_NUM_CONFIGURATIONS=1
|
|
||||||
-DF_CPU=16000000
|
|
||||||
-DF_USB=16000000UL
|
|
||||||
-DKEYMAP_C=\\\"keyboards/mntre/keymaps/default/keymap.c\\\"
|
|
||||||
-DLTO_ENABLE
|
|
||||||
-DMANUFACTURER=\\\"OLKB\\\"
|
|
||||||
-DMATRIX_COLS=15
|
|
||||||
-DMATRIX_ROWS=6
|
|
||||||
-DOLED_ENABLE
|
|
||||||
-DPRODUCT=\\\"MNTRE\\\"
|
|
||||||
-DPRODUCT_ID=0xAE01
|
|
||||||
-DPROTOCOL_LUFA
|
|
||||||
-DQMK_KEYBOARD_H="mntre.h"
|
|
||||||
-DUSB_DEVICE_ONLY
|
|
||||||
-DUSE_FLASH_DESCRIPTORS
|
|
||||||
-DUSE_STATIC_OPTIONS=\"(USB_DEVICE_OPT_FULLSPEED | USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)\"
|
|
||||||
-DVENDOR_ID=0x03A8
|
|
||||||
-D__AVR_ATmega32U4__
|
|
||||||
-Ikeyboards/mntre
|
|
||||||
-Iquantum
|
|
||||||
-Iquantum/logging
|
|
||||||
-Iquantum/keymap_extras
|
|
||||||
-Iquantum/process_keycode
|
|
||||||
-Iquantum/sequencer
|
|
||||||
-Iquantum/bootmagic
|
|
||||||
-Iplatforms
|
|
||||||
-Iplatforms/avr
|
|
||||||
-Itmk_core/protocol
|
|
||||||
-Ilib/lufa
|
|
||||||
-Itmk_core/protocol/lufa
|
|
||||||
-Idrivers
|
|
||||||
-Idrivers/oled
|
|
||||||
-Iplatforms/avr/drivers
|
|
||||||
-Iquantum/backlight
|
|
||||||
-std=gnu11
|
|
||||||
-flto
|
|
||||||
-Os
|
|
||||||
-Wall
|
|
||||||
-Wstrict-prototypes
|
|
||||||
-fcommon
|
|
||||||
--param=min-pagesize=0
|
|
||||||
-funsigned-char
|
|
||||||
-funsigned-bitfields
|
|
||||||
-ffunction-sections
|
|
||||||
-fdata-sections
|
|
||||||
-fpack-struct
|
|
||||||
-fshort-enums
|
|
||||||
-fno-builtin-printf
|
|
||||||
-fno-inline-small-functions
|
|
||||||
-fno-strict-aliasing
|
|
||||||
-include keyboards/mntre/config.h
|
|
||||||
-mmcu=atmega32u4
|
|
Loading…
Reference in New Issue
Block a user