common.mk 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. include message.mk
  2. # Directory common source files exist
  3. TOP_DIR = .
  4. TMK_DIR = tmk_core
  5. TMK_PATH = $(TOP_DIR)/$(TMK_DIR)
  6. LIB_PATH = $(TOP_DIR)/lib
  7. QUANTUM_DIR = quantum
  8. QUANTUM_PATH = $(TOP_DIR)/$(QUANTUM_DIR)
  9. BUILD_DIR := $(TOP_DIR)/.build
  10. SERIAL_DIR := $(QUANTUM_DIR)/serial_link
  11. SERIAL_PATH := $(QUANTUM_PATH)/serial_link
  12. SERIAL_SRC := $(wildcard $(SERIAL_PATH)/protocol/*.c)
  13. SERIAL_SRC += $(wildcard $(SERIAL_PATH)/system/*.c)
  14. SERIAL_DEFS += -DSERIAL_LINK_ENABLE
  15. COMMON_VPATH := $(TOP_DIR)
  16. COMMON_VPATH += $(TMK_PATH)
  17. COMMON_VPATH += $(QUANTUM_PATH)
  18. COMMON_VPATH += $(QUANTUM_PATH)/keymap_extras
  19. COMMON_VPATH += $(QUANTUM_PATH)/audio
  20. COMMON_VPATH += $(QUANTUM_PATH)/process_keycode
  21. COMMON_VPATH += $(QUANTUM_PATH)/api
  22. COMMON_VPATH += $(SERIAL_PATH)
  23. ifeq ($(strip $(API_SYSEX_ENABLE)), yes)
  24. OPT_DEFS += -DAPI_SYSEX_ENABLE
  25. SRC += $(QUANTUM_DIR)/api/api_sysex.c
  26. OPT_DEFS += -DAPI_ENABLE
  27. SRC += $(QUANTUM_DIR)/api.c
  28. MIDI_ENABLE=yes
  29. endif
  30. MUSIC_ENABLE := 0
  31. ifeq ($(strip $(AUDIO_ENABLE)), yes)
  32. OPT_DEFS += -DAUDIO_ENABLE
  33. MUSIC_ENABLE := 1
  34. SRC += $(QUANTUM_DIR)/process_keycode/process_audio.c
  35. SRC += $(QUANTUM_DIR)/audio/audio.c
  36. SRC += $(QUANTUM_DIR)/audio/voices.c
  37. SRC += $(QUANTUM_DIR)/audio/luts.c
  38. endif
  39. ifeq ($(strip $(MIDI_ENABLE)), yes)
  40. OPT_DEFS += -DMIDI_ENABLE
  41. MUSIC_ENABLE := 1
  42. SRC += $(QUANTUM_DIR)/process_keycode/process_midi.c
  43. endif
  44. ifeq ($(MUSIC_ENABLE), 1)
  45. SRC += $(QUANTUM_DIR)/process_keycode/process_music.c
  46. endif
  47. ifeq ($(strip $(COMBO_ENABLE)), yes)
  48. OPT_DEFS += -DCOMBO_ENABLE
  49. SRC += $(QUANTUM_DIR)/process_keycode/process_combo.c
  50. endif
  51. ifeq ($(strip $(VIRTSER_ENABLE)), yes)
  52. OPT_DEFS += -DVIRTSER_ENABLE
  53. endif
  54. ifeq ($(strip $(FAUXCLICKY_ENABLE)), yes)
  55. OPT_DEFS += -DFAUXCLICKY_ENABLE
  56. SRC += $(QUANTUM_DIR)/fauxclicky.c
  57. endif
  58. ifeq ($(strip $(UCIS_ENABLE)), yes)
  59. OPT_DEFS += -DUCIS_ENABLE
  60. UNICODE_COMMON = yes
  61. SRC += $(QUANTUM_DIR)/process_keycode/process_ucis.c
  62. endif
  63. ifeq ($(strip $(UNICODEMAP_ENABLE)), yes)
  64. OPT_DEFS += -DUNICODEMAP_ENABLE
  65. UNICODE_COMMON = yes
  66. SRC += $(QUANTUM_DIR)/process_keycode/process_unicodemap.c
  67. endif
  68. ifeq ($(strip $(UNICODE_ENABLE)), yes)
  69. OPT_DEFS += -DUNICODE_ENABLE
  70. UNICODE_COMMON = yes
  71. SRC += $(QUANTUM_DIR)/process_keycode/process_unicode.c
  72. endif
  73. ifeq ($(strip $(UNICODE_COMMON)), yes)
  74. SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c
  75. endif
  76. ifeq ($(strip $(RGBLIGHT_ENABLE)), yes)
  77. OPT_DEFS += -DRGBLIGHT_ENABLE
  78. SRC += $(QUANTUM_DIR)/light_ws2812.c
  79. SRC += $(QUANTUM_DIR)/rgblight.c
  80. CIE1931_CURVE = yes
  81. LED_BREATHING_TABLE = yes
  82. endif
  83. ifeq ($(strip $(TAP_DANCE_ENABLE)), yes)
  84. OPT_DEFS += -DTAP_DANCE_ENABLE
  85. SRC += $(QUANTUM_DIR)/process_keycode/process_tap_dance.c
  86. endif
  87. ifeq ($(strip $(PRINTING_ENABLE)), yes)
  88. OPT_DEFS += -DPRINTING_ENABLE
  89. SRC += $(QUANTUM_DIR)/process_keycode/process_printer.c
  90. SRC += $(TMK_DIR)/protocol/serial_uart.c
  91. endif
  92. ifeq ($(strip $(SERIAL_LINK_ENABLE)), yes)
  93. SRC += $(patsubst $(QUANTUM_PATH)/%,%,$(SERIAL_SRC))
  94. OPT_DEFS += $(SERIAL_DEFS)
  95. VAPTH += $(SERIAL_PATH)
  96. endif
  97. ifneq ($(strip $(VARIABLE_TRACE)),)
  98. SRC += $(QUANTUM_DIR)/variable_trace.c
  99. OPT_DEFS += -DNUM_TRACED_VARIABLES=$(strip $(VARIABLE_TRACE))
  100. ifneq ($(strip $(MAX_VARIABLE_TRACE_SIZE)),)
  101. OPT_DEFS += -DMAX_VARIABLE_TRACE_SIZE=$(strip $(MAX_VARIABLE_TRACE_SIZE))
  102. endif
  103. endif
  104. ifeq ($(strip $(LCD_ENABLE)), yes)
  105. CIE1931_CURVE = yes
  106. endif
  107. ifeq ($(strip $(BACKLIGHT_ENABLE)), yes)
  108. ifeq ($(strip $(VISUALIZER_ENABLE)), yes)
  109. CIE1931_CURVE = yes
  110. endif
  111. endif
  112. ifeq ($(strip $(CIE1931_CURVE)), yes)
  113. OPT_DEFS += -DUSE_CIE1931_CURVE
  114. LED_TABLES = yes
  115. endif
  116. ifeq ($(strip $(LED_BREATHING_TABLE)), yes)
  117. OPT_DEFS += -DUSE_LED_BREATHING_TABLE
  118. LED_TABLES = yes
  119. endif
  120. ifeq ($(strip $(LED_TABLES)), yes)
  121. SRC += $(QUANTUM_DIR)/led_tables.c
  122. endif