| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- """Information that should be available to the python library.
- """
- from os import environ
- from datetime import date
- from pathlib import Path
- # The root of the qmk_firmware tree.
- QMK_FIRMWARE = Path.cwd()
- # Upstream repo url
- QMK_FIRMWARE_UPSTREAM = 'qmk/qmk_firmware'
- # This is the number of directories under `qmk_firmware/keyboards` that will be traversed. This is currently a limitation of our make system.
- MAX_KEYBOARD_SUBFOLDERS = 5
- # Supported processor types
- CHIBIOS_PROCESSORS = 'cortex-m0', 'cortex-m0plus', 'cortex-m3', 'cortex-m4', 'MKL26Z64', 'MK20DX128', 'MK20DX256', 'MK66F18', 'STM32F042', 'STM32F072', 'STM32F103', 'STM32F303', 'STM32F401', 'STM32F407', 'STM32F411', 'STM32F446', 'STM32G431', 'STM32G474', 'STM32L412', 'STM32L422', 'STM32L433', 'STM32L443'
- LUFA_PROCESSORS = 'at90usb162', 'atmega16u2', 'atmega32u2', 'atmega16u4', 'atmega32u4', 'at90usb646', 'at90usb647', 'at90usb1286', 'at90usb1287', None
- VUSB_PROCESSORS = 'atmega32a', 'atmega328p', 'atmega328', 'attiny85'
- # Common format strings
- DATE_FORMAT = '%Y-%m-%d'
- DATETIME_FORMAT = '%Y-%m-%d %H:%M:%S %Z'
- TIME_FORMAT = '%H:%M:%S'
- # Used when generating matrix locations
- COL_LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijilmnopqrstuvwxyz'
- ROW_LETTERS = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnop'
- # Mapping between info.json and config.h keys
- LED_INDICATORS = {
- 'caps_lock': 'LED_CAPS_LOCK_PIN',
- 'num_lock': 'LED_NUM_LOCK_PIN',
- 'scroll_lock': 'LED_SCROLL_LOCK_PIN',
- }
- # Constants that should match their counterparts in make
- BUILD_DIR = environ.get('BUILD_DIR', '.build')
- KEYBOARD_OUTPUT_PREFIX = f'{BUILD_DIR}/obj_'
- # Headers for generated files
- this_year = date.today().year
- GPL2_HEADER_C_LIKE = f'''\
- /* Copyright {this_year} QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
- '''
- GPL2_HEADER_SH_LIKE = f'''\
- # Copyright {this_year} QMK
- #
- # This program is free software: you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation, either version 2 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
- '''
- GENERATED_HEADER_C_LIKE = '''\
- /*******************************************************************************
- 88888888888 888 d8b .d888 d8b 888 d8b
- 888 888 Y8P d88P" Y8P 888 Y8P
- 888 888 888 888
- 888 88888b. 888 .d8888b 888888 888 888 .d88b. 888 .d8888b
- 888 888 "88b 888 88K 888 888 888 d8P Y8b 888 88K
- 888 888 888 888 "Y8888b. 888 888 888 88888888 888 "Y8888b.
- 888 888 888 888 X88 888 888 888 Y8b. 888 X88
- 888 888 888 888 88888P' 888 888 888 "Y8888 888 88888P'
- 888 888
- 888 888
- 888 888
- .d88b. .d88b. 88888b. .d88b. 888d888 8888b. 888888 .d88b. .d88888
- d88P"88b d8P Y8b 888 "88b d8P Y8b 888P" "88b 888 d8P Y8b d88" 888
- 888 888 88888888 888 888 88888888 888 .d888888 888 88888888 888 888
- Y88b 888 Y8b. 888 888 Y8b. 888 888 888 Y88b. Y8b. Y88b 888
- "Y88888 "Y8888 888 888 "Y8888 888 "Y888888 "Y888 "Y8888 "Y88888
- 888
- Y8b d88P
- "Y88P"
- *******************************************************************************/
- '''
- GENERATED_HEADER_SH_LIKE = '''\
- ################################################################################
- #
- # 88888888888 888 d8b .d888 d8b 888 d8b
- # 888 888 Y8P d88P" Y8P 888 Y8P
- # 888 888 888 888
- # 888 88888b. 888 .d8888b 888888 888 888 .d88b. 888 .d8888b
- # 888 888 "88b 888 88K 888 888 888 d8P Y8b 888 88K
- # 888 888 888 888 "Y8888b. 888 888 888 88888888 888 "Y8888b.
- # 888 888 888 888 X88 888 888 888 Y8b. 888 X88
- # 888 888 888 888 88888P' 888 888 888 "Y8888 888 88888P'
- #
- # 888 888
- # 888 888
- # 888 888
- # .d88b. .d88b. 88888b. .d88b. 888d888 8888b. 888888 .d88b. .d88888
- # d88P"88b d8P Y8b 888 "88b d8P Y8b 888P" "88b 888 d8P Y8b d88" 888
- # 888 888 88888888 888 888 88888888 888 .d888888 888 88888888 888 888
- # Y88b 888 Y8b. 888 888 Y8b. 888 888 888 Y88b. Y8b. Y88b 888
- # "Y88888 "Y8888 888 888 "Y8888 888 "Y888888 "Y888 "Y8888 "Y88888
- # 888
- # Y8b d88P
- # "Y88P"
- #
- ################################################################################
- '''
|