From 56e792c95b1a29e61d9204a8f7f305d7f33261f1 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Fri, 1 Jun 2012 22:32:43 +0000 Subject: Switch over Demos, Bootloaders and Projects to the new and improved build system. --- LUFA/Build/lufa.avrdude.in | 54 ++++++++++++++ LUFA/Build/lufa.build.in | 182 +++++++++++++++++++++++++++++++++++++++++++++ LUFA/Build/lufa.core.in | 73 ++++++++++++++++++ LUFA/Build/lufa.dfu.in | 71 ++++++++++++++++++ LUFA/Build/lufa.doxygen.in | 52 +++++++++++++ LUFA/Build/lufa.sources.in | 86 +++++++++++++++++++++ 6 files changed, 518 insertions(+) create mode 100644 LUFA/Build/lufa.avrdude.in create mode 100644 LUFA/Build/lufa.build.in create mode 100644 LUFA/Build/lufa.core.in create mode 100644 LUFA/Build/lufa.dfu.in create mode 100644 LUFA/Build/lufa.doxygen.in create mode 100644 LUFA/Build/lufa.sources.in (limited to 'LUFA/Build') diff --git a/LUFA/Build/lufa.avrdude.in b/LUFA/Build/lufa.avrdude.in new file mode 100644 index 000000000..f16a7720c --- /dev/null +++ b/LUFA/Build/lufa.avrdude.in @@ -0,0 +1,54 @@ +# +# LUFA Library +# Copyright (C) Dean Camera, 2012. +# +# dean [at] fourwalledcubicle [dot] com +# www.lufa-lib.org +# + +LUFA_BUILD_MODULES += AVRDUDE +LUFA_BUILD_TARGETS += program + +# ----------------------------------------------------------------------------- +# LUFA DFU Bootloader Buildsystem Makefile Module. +# ----------------------------------------------------------------------------- +# DESCRIPTION: +# Provides a set of targets to re-program a device using the open source +# avr-dude utility. +# ----------------------------------------------------------------------------- +# TARGETS: +# +# program - Program target with application using avr-dude +# +# MANDATORY PARAMETERS: +# +# MCU - Microcontroller device model name +# TARGET - Application name +# +# OPTIONAL PARAMETERS: +# +# AVRDUDE_PROGRAMMER - Name of programming hardware to use +# AVRDUDE_PORT - Name of communication port to use +# AVRDUDE_FLAGS - Flags to pass to avr-dude +# +# ----------------------------------------------------------------------------- + +# Output Messages +MSG_AVRDUDE_CMD = ' [AVRDUDE] :' + +# Default values of user-supplied variables +AVRDUDE_PROGRAMMER ?= jtagicemkii +AVRDUDE_PORT ?= usb +AVRDUDE_FLAGS ?= -U flash:w:$(TARGET).hex + +# Sanity check the user MCU and TARGET makefile options +ifeq ($(MCU),) + $(error Makefile MCU value not set.) +endif +ifeq ($(TARGET),) + $(error Makefile TARGET value not set.) +endif + +program: $(TARGET).hex + @echo $(MSG_AVRDUDE_CMD) Programming device \"$(MCU)\" with settings \"$(AVRDUDE_FLAGS)\" using \"$(AVRDUDE_PROGRAMMER)\" on port \"$(AVRDUDE_PORT)\" + avrdude -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) $(AVRDUDE_FLAGS) diff --git a/LUFA/Build/lufa.build.in b/LUFA/Build/lufa.build.in new file mode 100644 index 000000000..e9921efb7 --- /dev/null +++ b/LUFA/Build/lufa.build.in @@ -0,0 +1,182 @@ +# +# LUFA Library +# Copyright (C) Dean Camera, 2012. +# +# dean [at] fourwalledcubicle [dot] com +# www.lufa-lib.org +# + +LUFA_BUILD_MODULES += BUILD +LUFA_BUILD_TARGETS += size checksource all elf hex clean + +# ----------------------------------------------------------------------------- +# LUFA Compiler Buildsystem Makefile Module. +# ----------------------------------------------------------------------------- +# DESCRIPTION: +# Provides a set of targets to build a C, C++ and/or Assembly application +# via the AVR-GCC compiler. +# ----------------------------------------------------------------------------- +# TARGETS: +# +# size - List application size +# checksource - Check existance of listed input source files +# all - Build application and list size +# elf - Build application ELF debug object file +# hex - Build application HEX object files +# clean - Remove output files +# +# MANDATORY PARAMETERS: +# +# TARGET - Application name +# ARCH - Device architecture name +# MCU - Microcontroller device model name +# SRC - List of input source files (.c, .cpp/.c++, .S) +# F_USB - Speed of the input clock of the USB controller +# in Hz +# LUFA_PATH - Path to the LUFA library core +# +# OPTIONAL PARAMETERS: +# +# BOARD - LUFA board hardware +# OPTIMIZATION - Optimization level +# C_STANDARD - C Language Standard to use +# CPP_STANDARD - C++ Language Standard to use +# F_CPU - Speed of the CPU, in Hz +# CC_FLAGS - Flags to pass to the compiler +# LD_FLAGS - Flags to pass to the linker +# +# ----------------------------------------------------------------------------- + +# Output Messages +MSG_BUILD_BEGIN = Begin compilation of project \"$(TARGET)\"... +MSG_BUILD_END = Finished building project \"$(TARGET)\"... +MSG_COMPILE_CMD = ' [CC] :' +MSG_REMOVE_CMD = ' [RM] :' +MSG_LINKER_CMD = ' [LNK] :' +MSG_SIZE_CMD = ' [SIZE] :' +MSG_OBJCPY_CMD = ' [OBJCPY] :' +MSG_OBJDMP_CMD = ' [OBJDMP] :' + +# Sanity check the user MCU, TARGET, ARCH, SRC, F_USB and LUFA_PATH makefile options +ifeq ($(TARGET),) + $(error Makefile TARGET value not set.) +endif +ifeq ($(ARCH),) + $(error Makefile ARCH value not set.) +endif +ifeq ($(MCU),) + $(error Makefile MCU value not set.) +endif +ifeq ($(SRC),) + $(error Makefile SRC value not set.) +endif +ifeq ($(F_USB),) + $(error Makefile F_USB value not set.) +endif +ifeq ($(LUFA_PATH),) + $(error Makefile LUFA_PATH value not set.) +endif + +# Default values of user-supplied variables +BOARD ?= NONE +OPTIMIZATION ?= s +F_CPU ?= +C_STANDARD ?= c99 +CPP_STANDARD ?= c++98 + +# Convert input source file list to differentiate them by type +C_SOURCE = $(filter %.c, $(SRC)) +CPP_SOURCE = $(filter %.cpp, $(SRC)) $(filter %.c++, $(SRC)) +ASM_SOURCE = $(filter %.S, $(SRC)) + +# Convert input source filenames into a list of required output object files +OBJECT_FILES = $(C_SOURCE:%.c=%.o) $(CPP_SOURCE:%.c++=%.o) $(CPP_SOURCE:%.c++=%.o) $(ASM_SOURCE:%.S=%.o) + +# Create a list of flags to pass to the compiler +CC_FLAGS += -mmcu=$(MCU) -I. -I$(LUFA_PATH)/.. -gdwarf-2 -pipe +CC_FLAGS += -Wall -Wstrict-prototypes +CC_FLAGS += -fno-strict-aliasing -funsigned-char -funsigned-bitfields -ffunction-sections -fshort-enums -fno-inline-small-functions -fpack-struct -fshort-enums +CC_FLAGS += -DARCH=ARCH_$(ARCH) -DBOARD=BOARD_$(BOARD) -DF_USB=$(F_USB)UL +ifneq ($(F_CPU),) + CC_FLAGS += -DF_CPU=$(F_CPU)UL +endif + +# Create a list of flags to pass to the linker +LD_FLAGS += -Wl,-Map=$(TARGET).map,--cref -Wl,--relax -Wl,--gc-sections -lm + +# Create a list of unknown source file types, if any are found throw an error +UNKNOWN_SOURCE = $(filter-out $(C_SOURCE) $(CPP_SOURCE) $(ASM_SOURCE), $(SRC)) +ifneq ($(UNKNOWN_SOURCE),) + $(error Unknown input source formats: $(UNKNOWN_SOURCE)) +endif + +# Determine flags to pass to the size utility based on its reported features +SIZE_MCU_FLAG = $(shell avr-size --help | grep -- --mcu > /dev/null && echo --mcu=$(MCU) ) +SIZE_FORMAT_FLAG = $(shell avr-size --help | grep -- --format=.*avr > /dev/null && echo --format=avr ) + + +begin: + @echo "" + @echo $(MSG_BUILD_BEGIN) + +end: + @echo $(MSG_BUILD_END) + @echo "" + +checksource: + @for f in $(SRC) $(CPPSRC) $(ASRC); do \ + if [ -f $$f ]; then \ + echo "Found Source File: $$f" ; \ + else \ + echo "Source File Not Found: $$f" ; \ + fi; \ + done + +size: + @echo $(MSG_SIZE_CMD) Determining size of \"$(TARGET).elf\" + @if test -f $(TARGET).elf; then \ + avr-size $(SIZE_MCU_FLAG) $(SIZE_FORMAT_FLAG) $(TARGET).elf ; 2>/dev/null; \ + fi + +.PHONY: begin hex lss end size +all: begin hex end size + +elf: $(TARGET).elf +hex: $(TARGET).hex $(TARGET).eep +lss: $(TARGET).lss + +%.o: %.c + @echo $(MSG_COMPILE_CMD) Compiling C file \"$^\" + avr-gcc -c $(CC_FLAGS) -O$(OPTIMIZATION) --std=$(C_STANDARD) $< -o $@ + +%.o: %.cpp +%.o: %.c++ + @echo $(MSG_COMPILE_CMD) Compiling C++ file \"$^\" + avr-gcc -c $(CC_FLAGS) -O$(OPTIMIZATION) --std=$(CPP_STANDARD) -x c++ $< -o $@ + +%.o: %.S + @echo $(MSG_COMPILE_CMD) Assembling \"$^\" + avr-gcc -c $(CC_FLAGS) -x assembler-with-cpp $< -o $@ + +.PRECIOUS : $(OBJECT_FILES) +%.elf: $(OBJECT_FILES) + @echo $(MSG_LINKER_CMD) Linking object files into \"$@\" + avr-gcc $^ $(CC_FLAGS) $(LD_FLAGS) -o $@ + +%.hex: %.elf + @echo $(MSG_OBJCPY_CMD) Extracting HEX file data from \"$@\" + avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature $< $@ + +%.eep: %.elf + @echo $(MSG_OBJCPY_CMD) Extracting EEP file data from \"$@\" + avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex $< $@ || exit 0 + +%.lss: %.elf + @echo $(MSG_OBJDMP_CMD) Extracting LSS file data from \"$@\" + avr-objdump -h -S -z $< > $@ + +clean: + @echo $(MSG_REMOVE_CMD) Removing object files \"$(OBJECT_FILES)\" + rm -f $(OBJECT_FILES) + @echo $(MSG_REMOVE_CMD) Removing output files \"$(TARGET).elf $(TARGET).hex $(TARGET).eep $(TARGET).map $(TARGET).lss\" + rm -f $(TARGET).elf $(TARGET).hex $(TARGET).eep $(TARGET).map $(TARGET).lss diff --git a/LUFA/Build/lufa.core.in b/LUFA/Build/lufa.core.in new file mode 100644 index 000000000..71c35e035 --- /dev/null +++ b/LUFA/Build/lufa.core.in @@ -0,0 +1,73 @@ +# +# LUFA Library +# Copyright (C) Dean Camera, 2012. +# +# dean [at] fourwalledcubicle [dot] com +# www.lufa-lib.org +# + +LUFA_BUILD_MODULES += CORE +LUFA_BUILD_TARGETS += list_targets list_modules help + +# ----------------------------------------------------------------------------- +# LUFA Core Buildsystem Makefile Module. +# ----------------------------------------------------------------------------- +# DESCRIPTION: +# Provides a set of core build targets for the LUFA buildsystem +# ----------------------------------------------------------------------------- +# TARGETS: +# +# info - Build system information +# help - Build system help +# list_targets - List all build targets +# list_modules - List all build modules +# +# MANDATORY PARAMETERS: +# +# (None) +# +# OPTIONAL PARAMETERS: +# +# (None) +# +# ----------------------------------------------------------------------------- + +info: + @echo "===================================================================" + @echo " LUFA Build System 2.0 " + @echo " (C) Dean Camera { dean @ fourwalledcubicle . com } " + @echo "===================================================================" + +.PHONY: info +help: info + @echo "DESCRIPTION: " + @echo " This build system is a set of makefile modules for (GNU) Make, to " + @echo " provide a simple system for building LUFA powered applications. " + @echo " Each makefile module can be included from within a user makefile, " + @echo " to expose the build rules documented in the comments at the top of" + @echo " each build module. " + @echo " " + @echo "USAGE: " + @echo " To execute a rule, define all variables indicated in the desired " + @echo " module as a required parameter before including the build module " + @echo " in your project makefile. Parameters marked as optional will " + @echo " assume a default value in the module if not user-assigned. " + @echo "===================================================================" + @echo " Currently Used Modules in this application: " + @echo " " + @echo " [" $(sort $(LUFA_BUILD_MODULES)) "]" + @echo " " + @echo " " + @echo " Currently Available Build Targets in this application: " + @echo " " + @echo " [" $(sort $(LUFA_BUILD_TARGETS)) "]" + @echo "===================================================================" + @echo " The LUFA BuildSystem 2.0 - Powered By Unicorns (tm) " + @echo "===================================================================" + +list_targets: + @echo Currently Available Build Targets: $(sort $(LUFA_BUILD_TARGETS)) + +list_modules: + @echo Currently Build Modules: $(sort $(LUFA_BUILD_MODULES)) + diff --git a/LUFA/Build/lufa.dfu.in b/LUFA/Build/lufa.dfu.in new file mode 100644 index 000000000..f04472e3b --- /dev/null +++ b/LUFA/Build/lufa.dfu.in @@ -0,0 +1,71 @@ +# +# LUFA Library +# Copyright (C) Dean Camera, 2012. +# +# dean [at] fourwalledcubicle [dot] com +# www.lufa-lib.org +# + +LUFA_BUILD_MODULES += DFU +LUFA_BUILD_TARGETS += flip flip-ee dfu dfu-ee + +# ----------------------------------------------------------------------------- +# LUFA DFU Bootloader Buildsystem Makefile Module. +# ----------------------------------------------------------------------------- +# DESCRIPTION: +# Provides a set of targets to re-program a device currently running a DFU +# class bootloader with a project's FLASH and EEPROM files. +# ----------------------------------------------------------------------------- +# TARGETS: +# +# flip - Program FLASH into target via Atmel FLIP +# flip-ee - Program EEPROM into target via Atmel FLIP +# dfu - Program FLASH into target via dfu-programmer +# dfu-ee - Program EEPROM into target via dfu-programmer +# +# MANDATORY PARAMETERS: +# +# MCU - Microcontroller device model name +# TARGET - Application name +# +# OPTIONAL PARAMETERS: +# +# (None) +# +# ----------------------------------------------------------------------------- + +# Output Messages +MSG_DFU_CMD = ' [DFU] :' + +# Sanity check the user MCU and TARGET makefile options +ifeq ($(MCU),) + $(error Makefile MCU value not set.) +endif +ifeq ($(TARGET),) + $(error Makefile TARGET value not set.) +endif + +flip: $(TARGET).hex + @echo $(MSG_DFU_CMD) Programming FLASH with batchisp using \"$(TARGET).hex\" + batchisp -hardware usb -device $(MCU) -operation erase f + batchisp -hardware usb -device $(MCU) -operation loadbuffer $(TARGET).hex program + batchisp -hardware usb -device $(MCU) -operation start reset 0 + +flip-ee: $(TARGET).eep + cp $(TARGET).eep $(TARGET)eep.hex + @echo $(MSG_DFU_CMD) Programming EEPROM with batchisp using \"$(TARGET).eep\" + batchisp -hardware usb -device $(MCU) -operation memory EEPROM erase + batchisp -hardware usb -device $(MCU) -operation memory EEPROM loadbuffer $(TARGET)eep.hex program + batchisp -hardware usb -device $(MCU) -operation start reset 0 + rm $(TARGET)eep.hex + +dfu: $(TARGET).hex + @echo $(MSG_DFU_CMD) Programming FLASH with dfu-programmer using \"$(TARGET).hex\" + dfu-programmer $(MCU) erase + dfu-programmer $(MCU) flash $(TARGET).hex + dfu-programmer $(MCU) reset + +dfu-ee: $(TARGET).hex $(TARGET).eep + @echo $(MSG_DFU_CMD) Programming EEPROM with dfu-programmer using \"$(TARGET).eep\" + dfu-programmer $(MCU) eeprom-flash $(TARGET).eep + dfu-programmer $(MCU) reset \ No newline at end of file diff --git a/LUFA/Build/lufa.doxygen.in b/LUFA/Build/lufa.doxygen.in new file mode 100644 index 000000000..9efbbcbcc --- /dev/null +++ b/LUFA/Build/lufa.doxygen.in @@ -0,0 +1,52 @@ +# +# LUFA Library +# Copyright (C) Dean Camera, 2012. +# +# dean [at] fourwalledcubicle [dot] com +# www.lufa-lib.org +# + +LUFA_BUILD_MODULES += DOXYGEN +LUFA_BUILD_TARGETS += doxygen + +# ----------------------------------------------------------------------------- +# LUFA Doxygen Buildsystem Makefile Module. +# ----------------------------------------------------------------------------- +# DESCRIPTION: +# Provides a set of targets to automatically build Doxygen documentation for +# a project (see www.doxygen.org). +# ----------------------------------------------------------------------------- +# TARGETS: +# +# doxygen - Build Doxygen Documentation +# +# MANDATORY PARAMETERS: +# +# (None) +# +# OPTIONAL PARAMETERS: +# +# DOXYGEN_CONF - Doxygen configuration filename +# DOXYGEN_FAIL_ON_WARNING - Set to Y to fail the build on Doxygen warnings, +# N to continue even if warnings occur +# DOXYGEN_OVERRIDE_PARAMS - Parameters to override in the doxygen +# configuration file +# ----------------------------------------------------------------------------- + +# Output Messages +MSG_DOXYGEN_CMD = ' [DOXYGEN] :' + +# Default values of user-supplied variables +DOXYGEN_CONF ?= Doxygen.conf +DOXYGEN_FAIL_ON_WARNING ?= Y +DOXYGEN_OVERRIDE_PARAMS ?= QUIET=YES + +# Determine Doxygen invocation command +DOXYGEN_CMD = ( cat Doxygen.conf ; $(DOXYGEN_OVERRIDE_PARAMS:%=echo "%";)) | doxygen - +ifeq ($(DOXYGEN_FAIL_ON_WARNING), Y) + DOXYGEN_CMD = if ( ( cat Doxygen.conf $(DOXYGEN_OVERRIDE_PARAMS:%=; echo "%") ) | doxygen - 2>&1 | grep -v "warning: ignoring unsupported tag" ;); then exit 1; fi; +endif + +doxygen: + @echo $(MSG_DOXYGEN_CMD) Configuration file \"$(DOXYGEN_CONF)\" with parameters \"$(DOXYGEN_OVERRIDE_PARAMS)\" + $(DOXYGEN_CMD) diff --git a/LUFA/Build/lufa.sources.in b/LUFA/Build/lufa.sources.in new file mode 100644 index 000000000..9985933b6 --- /dev/null +++ b/LUFA/Build/lufa.sources.in @@ -0,0 +1,86 @@ +# +# LUFA Library +# Copyright (C) Dean Camera, 2012. +# +# dean [at] fourwalledcubicle [dot] com +# www.lufa-lib.org +# + +LUFA_BUILD_MODULES += SOURCES +LUFA_BUILD_TARGETS += + +# ----------------------------------------------------------------------------- +# LUFA Sources Buildsystem Makefile Module. +# ----------------------------------------------------------------------------- +# DESCRIPTION: +# Provides a set of makefile variables for the various LUFA module sources. +# Once included, the sources required to use a given LUFA module will become +# available using the makefile variable names listed in the LUFA project +# documentation. +# ----------------------------------------------------------------------------- +# TARGETS: +# +# (None) +# +# MANDATORY PARAMETERS: +# +# LUFA_PATH - Path to the LUFA library core +# ARCH - Device architecture name +# +# OPTIONAL PARAMETERS: +# +# (None) +# +# ----------------------------------------------------------------------------- + +# Sanity check the user LUFA_PATH and ARCH makefile options +ifeq ($(LUFA_PATH),) + $(error Makefile LUFA_PATH value not set.) +endif +ifeq ($(ARCH),) + $(error Makefile ARCH value not set.) +endif + +# Allow LUFA_ROOT_PATH to be overridden elsewhere to support legacy LUFA makefiles +LUFA_ROOT_PATH ?= $(LUFA_PATH) + +# Construct LUFA module source variables +LUFA_SRC_USB = $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Device_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Endpoint_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Host_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Pipe_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBController_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBInterrupt_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/EndpointStream_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/PipeStream_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/ConfigDescriptor.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/DeviceStandardReq.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/Events.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/HostStandardReq.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/USBTask.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Common/HIDParser.c +LUFA_SRC_USBCLASS = $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/AudioClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/CDCClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/HIDClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MassStorageClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MIDIClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/RNDISClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/AudioClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/CDCClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/HIDClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MassStorageClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MIDIClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/PrinterClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/RNDISClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/StillImageClassHost.c +LUFA_SRC_TEMPERATURE = $(LUFA_ROOT_PATH)/Drivers/Board/Temperature.c +LUFA_SRC_SERIAL = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/Serial_$(ARCH).c +LUFA_SRC_TWI = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/TWI_$(ARCH).c + +# Build a list of all available module sources +LUFA_SRC_ALL_FILES = $(LUFA_SRC_USB) \ + $(LUFA_SRC_USBCLASS) \ + $(LUFA_SRC_TEMPERATURE) \ + $(LUFA_SRC_SERIAL) \ + $(LUFA_SRC_TWI) \ No newline at end of file -- cgit v1.2.3