eepyPad/Makefile

47 lines
1.7 KiB
Makefile

# Set QMK_HOME in your environment variables to adjust the path of the firmware
QMK_HOME ?= ${HOME}/qmk_firmware
# Directories for QMK keyboard files (author, keyboard, revision)
QMK_KEYBOARD_AUTHOR_DIR := binarydiv
QMK_KEYBOARD_BASE_DIR := ${QMK_KEYBOARD_AUTHOR_DIR}/eepypad
QMK_KEYBOARD_REV_DIR := ${QMK_KEYBOARD_BASE_DIR}/v1
# Keymap to use when compiling QMK firmware
QMK_KEYMAP := default
# -- QMK commands
# Prerequisite: Check if QMK is installed
.PHONY: _qmk-check-firmware-installed
_qmk-check-firmware-installed:
@test -d "${QMK_HOME}" || { \
echo "QMK firmware not found! (QMK_HOME=${QMK_HOME})"; \
echo "Please install QMK using 'qmk setup' first or set QMK_HOME in environment."; \
exit 1; \
}
# Create symlink in QMK firmware directory to the keyboard files in qmk_keyboards/
.PHONY: _qmk-create-symlink
_qmk-create-symlink: _qmk-check-firmware-installed ${QMK_HOME}/keyboards/${QMK_KEYBOARD_BASE_DIR}
# Only create symlink if it doesn't exist already
${QMK_HOME}/keyboards/${QMK_KEYBOARD_BASE_DIR}:
mkdir -p "${QMK_HOME}/keyboards/${QMK_KEYBOARD_AUTHOR_DIR}"
ln -s "$$(realpath qmk_keyboards/${QMK_KEYBOARD_BASE_DIR})" "${QMK_HOME}/keyboards/${QMK_KEYBOARD_BASE_DIR}"
# Compile QMK firmware
.PHONY: qmk-compile
qmk-compile: _qmk-create-symlink
qmk compile -kb ${QMK_KEYBOARD_REV_DIR} -km ${QMK_KEYMAP}
# Compile and flash QMK firmware to keyboard
.PHONY: qmk-flash
qmk-flash: _qmk-create-symlink
qmk flash -kb ${QMK_KEYBOARD_REV_DIR} -km ${QMK_KEYMAP}
# Run "qmk config" to set this keyboard as the default (to simplify running qmk commands manually)
.PHONY: qmk-activate
qmk-activate: _qmk-create-symlink
qmk config user.keyboard=${QMK_KEYBOARD_REV_DIR} user.keymap=${QMK_KEYMAP}