X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=Makefile.common;h=795e7b999bf9d3ff050b91d9e709d0d9f84327b9;hb=7ad93f7850cd3d20260628b10a8b123d97736e4e;hp=5febcd75857859e42a1142e60c004c86b2b3e5ff;hpb=2f80e790c6310ad24a4cb3d4a72c31314364fef7;p=max%2Ftmk_keyboard.git diff --git a/Makefile.common b/Makefile.common index 5febcd75..795e7b99 100644 --- a/Makefile.common +++ b/Makefile.common @@ -50,16 +50,40 @@ # List C source files here. (C dependencies are automatically generated.) SRC = tmk.c \ + layer.c \ key_process.c \ usb_keyboard.c \ - usb_mouse.c \ usb_debug.c \ usb.c \ jump_bootloader.c \ print.c \ + timer.c \ util.c SRC += $(TARGET_SRC) +# Option modules +ifdef $(or MOUSEKEY_ENABLE, PS2_MOUSE_ENABLE) + SRC += usb_mouse.c +endif +ifdef MOUSEKEY_ENABLE + SRC += mousekey.c +endif +ifdef PS2_MOUSE_ENABLE + SRC += ps2.c \ + ps2_mouse.c +endif +ifdef USB_EXTRA_ENABLE + SRC += usb_extra.c +endif + +ALL_SRC = $(SRC) +ALL_SRC += usb_mouse.c \ + mousekey.c \ + ps2.c \ + ps2_mouse.c \ + usb_extra.c + + # C source file search path VPATH = $(TARGET_DIR):$(COMMON_DIR) @@ -116,42 +140,38 @@ EXTRAINCDIRS = $(TARGET_DIR) $(COMMON_DIR) CSTANDARD = -std=gnu99 +OPT_DEFS = +ifdef MOUSEKEY_ENABLE + OPT_DEFS += -DMOUSEKEY_ENABLE +endif +ifdef PS2_MOUSE_ENABLE + OPT_DEFS += -DPS2_MOUSE_ENABLE +endif +ifdef USB_EXTRA_ENABLE + OPT_DEFS += -DUSB_EXTRA_ENABLE +endif +ifdef USB_NKRO_ENABLE + OPT_DEFS += -DUSB_NKRO_ENABLE +endif +ifdef $(or MOUSEKEY_ENABLE, PS2_MOUSE_ENABLE) + OPT_DEFS += -DUSB_MOUSE_ENABLE +endif + # Place -D or -U options here for C sources CDEFS = -DF_CPU=$(F_CPU)UL -CDEFS += -DDESCRIPTION=$(DESCRIPTION) -CDEFS += -DVENDOR_ID=$(VENDOR_ID) -CDEFS += -DPRODUCT_ID=$(PRODUCT_ID) -CDEFS += -DMANUFACTURER=$(MANUFACTURER) -CDEFS += -DPRODUCT=$(PRODUCT) -ifdef MOUSE_DELAY_TIME -CDEFS += -DMOUSE_DELAY_TIME=$(MOUSE_DELAY_TIME) -endif +CDEFS += $(OPT_DEFS) # Place -D or -U options here for ASM sources ADEFS = -DF_CPU=$(F_CPU) -ADEFS += -DDESCRIPTION=$(DESCRIPTION) -ADEFS += -DVENDOR_ID=$(VENDOR_ID) -ADEFS += -DPRODUCT_ID=$(PRODUCT_ID) -ADEFS += -DMANUFACTURER=$(MANUFACTURER) -ADEFS += -DPRODUCT=$(PRODUCT) -ifdef MOUSE_DELAY_TIME -ADEFS += -DMOUSE_DELAY_TIME=$(MOUSE_DELAY_TIME) -endif +ADEFS += $(OPT_DEFS) # Place -D or -U options here for C++ sources -CPPDEFS = -DF_CPU=$(F_CPU)UL -DDESCRIPTION=$(DESCRIPTION) -DVENDOR_ID=$(VENDOR_ID) -DPRODUCT_ID=$(PRODUCT_ID) +CPPDEFS = -DF_CPU=$(F_CPU)UL #CPPDEFS += -D__STDC_LIMIT_MACROS #CPPDEFS += -D__STDC_CONSTANT_MACROS -CPPDEFS += -DDESCRIPTION=$(DESCRIPTION) -CPPDEFS += -DVENDOR_ID=$(VENDOR_ID) -CPPDEFS += -DPRODUCT_ID=$(PRODUCT_ID) -CPPDEFS += -DMANUFACTURER=$(MANUFACTURER) -CPPDEFS += -DPRODUCT=$(PRODUCT) -ifdef MOUSE_DELAY_TIME -CPPDEFS += -DMOUSE_DELAY_TIME=$(MOUSE_DELAY_TIME) -endif +CPPDEFS += $(OPT_DEFS) @@ -180,6 +200,7 @@ CFLAGS += -Wstrict-prototypes CFLAGS += -Wa,-adhlns=$(@:%.o=$(OBJDIR)/%.lst) CFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS)) CFLAGS += $(CSTANDARD) +CFLAGS += -include config.h #---------------- Compiler Options C++ ---------------- @@ -207,6 +228,7 @@ CPPFLAGS += -Wundef CPPFLAGS += -Wa,-adhlns=$(<:%.cpp=$(OBJDIR)/%.lst) CPPFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS)) #CPPFLAGS += $(CSTANDARD) +CPPFLAGS += -include config.h #---------------- Assembler Options ---------------- @@ -219,6 +241,7 @@ CPPFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS)) # -listing-cont-lines: Sets the maximum number of continuation lines of hex # dump that will be displayed for a given single line of source input. ASFLAGS = $(ADEFS) -Wa,-adhlns=$(<:%.S=$(OBJDIR)/%.lst),-gstabs,--listing-cont-lines=100 +ASFLAGS += -include config.h #---------------- Library Options ---------------- @@ -415,6 +438,11 @@ ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS) # Default target. all: begin gccversion sizebefore build sizeafter end +depend: tmk.c + @echo $< + @echo $(