Update makefiles to use the latest WinAVR/Atmel toolchain makefile template.

Add new module source variables to the library core makefile, so that module sources can be added to a project's makefile on a per-module rather than per-file basis.
This commit is contained in:
Dean Camera 2010-07-19 14:00:44 +00:00
parent 42ac34b484
commit 6b5e684c77
116 changed files with 2969 additions and 4241 deletions

View file

@ -39,7 +39,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/Board/Temperature.c
* - LUFA/Drivers/Board/Temperature.c <i>(Makefile source module name: LUFA_SRC_TEMPERATURE)</i>
*
* \section Module Description
* Temperature sensor driver. This provides an easy to use interface for the hardware temperature sensor located

View file

@ -39,7 +39,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/Peripheral/Serial.c
* - LUFA/Drivers/Peripheral/Serial.c <i>(Makefile source module name: LUFA_SRC_SERIAL)</i>
*
* \section Module Description
* Hardware serial USART driver. This module provides an easy to use driver for

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/Peripheral/SerialStream.c
* - LUFA/Drivers/Peripheral/SerialStream.c <i>(Makefile source module name: LUFA_SRC_SERIALSTREAM)</i>
*
* \section Module Description
* Serial stream driver for the USART subsystem on supported USB AVRs. This makes use of the functions in the

View file

@ -42,7 +42,8 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/Peripheral/TWI.c
* - LUFA/Drivers/Peripheral/TWI.c <i>(Makefile source module name: LUFA_SRC_TWI)</i>
*
*
* \section Module Description
* Master Mode Hardware TWI driver. This module provides an easy to use driver for the hardware

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/Audio.c
* - LUFA/Drivers/USB/Class/Device/Audio.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Audio Class Driver module. This module contains an internal implementation of the USB Audio Class, for Device

View file

@ -42,8 +42,8 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/CDC.c
* - LUFA/Drivers/USB/Class/Host/CDC.c
* - LUFA/Drivers/USB/Class/Device/CDC.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
* - LUFA/Drivers/USB/Class/Host/CDC.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* CDC Class Driver module. This module contains an internal implementation of the USB CDC-ACM class Virtual Serial

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/Audio.c
* - LUFA/Drivers/USB/Class/Device/Audio.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Device Mode USB Class driver framework interface, for the Audio USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/CDC.c
* - LUFA/Drivers/USB/Class/Device/CDC.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Device Mode USB Class driver framework interface, for the CDC USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/HID.c
* - LUFA/Drivers/USB/Class/Device/HID.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Device Mode USB Class driver framework interface, for the HID USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/MIDI.c
* - LUFA/Drivers/USB/Class/Device/MIDI.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Device Mode USB Class driver framework interface, for the MIDI USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/MassStorage.c
* - LUFA/Drivers/USB/Class/Device/MassStorage.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Device Mode USB Class driver framework interface, for the Mass Storage USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/RNDIS.c
* - LUFA/Drivers/USB/Class/Device/RNDIS.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Device Mode USB Class driver framework interface, for the RNDIS USB Class driver.

View file

@ -42,9 +42,9 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/HID.c
* - LUFA/Drivers/USB/Class/Host/HID.c
* - LUFA/Drivers/USB/Class/Host/HIDParser.c
* - LUFA/Drivers/USB/Class/Device/HID.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
* - LUFA/Drivers/USB/Class/Host/HID.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
* - LUFA/Drivers/USB/Class/Host/HIDParser.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
*
* \section Module Description
* HID Class Driver module. This module contains an internal implementation of the USB HID Class, for both Device

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/CDC.c
* - LUFA/Drivers/USB/Class/Host/CDC.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Host Mode USB Class driver framework interface, for the CDC USB Class driver.

View file

@ -42,8 +42,8 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/HID.c
* - LUFA/Drivers/USB/Class/Host/HIDParser.c
* - LUFA/Drivers/USB/Class/Host/HID.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
* - LUFA/Drivers/USB/Class/Host/HIDParser.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
*
* \section Module Description
* Host Mode USB Class driver framework interface, for the HID USB Class driver.

View file

@ -41,7 +41,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/HIDParser.c
* - LUFA/Drivers/USB/Class/Host/HIDParser.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
*
* \section Module Description
* Functions, macros, variables, enums and types related to the parsing of HID class device report descriptors.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/MIDI.c
* - LUFA/Drivers/USB/Class/Host/MIDI.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Host Mode USB Class driver framework interface, for the MIDI USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/MassStorage.c
* - LUFA/Drivers/USB/Class/Host/MassStorage.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Host Mode USB Class driver framework interface, for the Mass Storage USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/Printer.c
* - LUFA/Drivers/USB/Class/Host/Printer.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Host Mode USB Class driver framework interface, for the Printer USB Class driver.

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/RNDIS.c
* - LUFA/Drivers/USB/Class/Host/RNDIS.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Host Mode USB Class driver framework interface, for the Microsoft RNDIS Ethernet

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/StillImage.c
* - LUFA/Drivers/USB/Class/Host/StillImage.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Host Mode USB Class driver framework interface, for the Still Image USB Class driver.

View file

@ -42,8 +42,8 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/MIDI.c
* - LUFA/Drivers/USB/Class/Host/MIDI.c
* - LUFA/Drivers/USB/Class/Device/MIDI.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
* - LUFA/Drivers/USB/Class/Host/MIDI.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* MIDI Class Driver module. This module contains an internal implementation of the USB MIDI Class, for both Device

View file

@ -42,8 +42,8 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/MassStorage.c
* - LUFA/Drivers/USB/Class/Host/MassStorage.c
* - LUFA/Drivers/USB/Class/Device/MassStorage.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
* - LUFA/Drivers/USB/Class/Host/MassStorage.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Mass Storage Class Driver module. This module contains an internal implementation of the USB Mass Storage Class, for both

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/Printer.c
* - LUFA/Drivers/USB/Class/Host/Printer.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Printer Class Driver module. This module contains an internal implementation of the USB Printer Class, for the base

View file

@ -42,8 +42,8 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Device/RNDIS.c
* - LUFA/Drivers/USB/Class/Host/RNDIS.c
* - LUFA/Drivers/USB/Class/Device/RNDIS.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
* - LUFA/Drivers/USB/Class/Host/RNDIS.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* RNDIS Class Driver module. This module contains an internal implementation of the Microsoft USB RNDIS Networking

View file

@ -42,7 +42,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/Class/Host/StillImage.c
* - LUFA/Drivers/USB/Class/Host/StillImage.c <i>(Makefile source module name: LUFA_SRC_USBCLASS)</i>
*
* \section Module Description
* Still Image Class Driver module. This module contains an internal implementation of the USB Still Image Class,

View file

@ -41,17 +41,17 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Drivers/USB/LowLevel/DevChapter9.c
* - LUFA/Drivers/USB/LowLevel/Device.c
* - LUFA/Drivers/USB/LowLevel/Endpoint.c
* - LUFA/Drivers/USB/LowLevel/Host.c
* - LUFA/Drivers/USB/LowLevel/HostChapter9.c
* - LUFA/Drivers/USB/LowLevel/LowLevel.c
* - LUFA/Drivers/USB/LowLevel/Pipe.c
* - LUFA/Drivers/USB/LowLevel/USBInterrupt.c
* - LUFA/Drivers/USB/HighLevel/ConfigDescriptor.c
* - LUFA/Drivers/USB/HighLevel/Events.c
* - LUFA/Drivers/USB/HighLevel/USBTask.c
* - LUFA/Drivers/USB/LowLevel/DevChapter9.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/LowLevel/Device.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/LowLevel/Endpoint.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/LowLevel/Host.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/LowLevel/HostChapter9.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/LowLevel/LowLevel.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/LowLevel/Pipe.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/LowLevel/USBInterrupt.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/HighLevel/ConfigDescriptor.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/HighLevel/Events.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
* - LUFA/Drivers/USB/HighLevel/USBTask.c <i>(Makefile source module name: LUFA_SRC_USB)</i>
*
* \section Module Description
* Driver and framework for the USB controller hardware on the USB series of AVR microcontrollers. This module

View file

@ -16,6 +16,7 @@
* - Added new Drivers/USB/LowLevel/Device.c file to house Device mode specific functions that are more complicated than simple macros
* - Added new AVRStudio 4 project files for all library demos, projects and bootloaders
* - Added ability to set the serial baud rate via the user's terminal in the XPLAINBridge project
* - Added new LUFA module variables for the different source modules in the core library makefile to simplify project makefiles
*
* <b>Changed:</b>
* - The RingBuff library code has been replaced in the XPLAINBridge, Benito and USBtoSerial projects with an ultra lightweight

View file

@ -14,7 +14,7 @@
*
* <b>USB Core</b>
* - A new USB driver source file, Drivers/USB/LowLevel/Device.c now exists. This source file should be added to all project
* makefiles using the USB driver of LUFA.
* makefiles using the USB driver of LUFA, or the makefile should be updated to use the new module source variables.
*
* <b>Device Mode</b>
* - The USB_Device_IsRemoteWakeupSent() macro has been removed, as the remote wakeup request is now fully handled by the

View file

@ -43,7 +43,7 @@
*
* \section Sec_Dependencies Module Source Dependencies
* The following files must be built with any user project that uses this module:
* - LUFA/Scheduler/Scheduler.c
* - LUFA/Scheduler/Scheduler.c <i>(Makefile source module name: LUFA_SRC_SCHEDULER)</i>
*
* \section Module Description
* Simple round-robbin cooperative scheduler for use in basic projects where non real-time tasks need

View file

@ -6,48 +6,70 @@
# www.fourwalledcubicle.com
#
# Makefile for the LUFA library itself.
# Makefile for the LUFA library itself. This can be used to generate the library documentation.
LUFA_SRC_FILES = ./Drivers/USB/LowLevel/DevChapter9.c \
./Drivers/USB/LowLevel/Device.c \
./Drivers/USB/LowLevel/Endpoint.c \
./Drivers/USB/LowLevel/Host.c \
./Drivers/USB/LowLevel/HostChapter9.c \
./Drivers/USB/LowLevel/LowLevel.c \
./Drivers/USB/LowLevel/Pipe.c \
./Drivers/USB/LowLevel/USBInterrupt.c \
./Drivers/USB/HighLevel/ConfigDescriptor.c \
./Drivers/USB/HighLevel/Events.c \
./Drivers/USB/HighLevel/USBTask.c \
./Drivers/USB/Class/Device/Audio.c \
./Drivers/USB/Class/Device/CDC.c \
./Drivers/USB/Class/Device/HID.c \
./Drivers/USB/Class/Device/MIDI.c \
./Drivers/USB/Class/Device/MassStorage.c \
./Drivers/USB/Class/Device/RNDIS.c \
./Drivers/USB/Class/Host/CDC.c \
./Drivers/USB/Class/Host/HID.c \
./Drivers/USB/Class/Host/HIDParser.c \
./Drivers/USB/Class/Host/MassStorage.c \
./Drivers/USB/Class/Host/Printer.c \
./Drivers/USB/Class/Host/StillImage.c \
./Drivers/Board/Temperature.c \
./Drivers/Peripheral/Serial.c \
./Drivers/Peripheral/SerialStream.c \
./Drivers/Peripheral/TWI.c \
./Scheduler/Scheduler.c \
all:
# Check to see if the LUFA_PATH variable has not been set (the makefile is not being included from a project makefile)
ifeq ($(origin LUFA_PATH), undefined)
LUFA_ROOT_PATH = .
else
LUFA_ROOT_PATH = $(LUFA_PATH)/LUFA
endif
clean:
# Define module source file lists
LUFA_SRC_USB = $(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/DevChapter9.c \
$(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/Device.c \
$(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/Endpoint.c \
$(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/Host.c \
$(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/HostChapter9.c \
$(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/LowLevel.c \
$(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/Pipe.c \
$(LUFA_ROOT_PATH)/Drivers/USB/LowLevel/USBInterrupt.c \
$(LUFA_ROOT_PATH)/Drivers/USB/HighLevel/ConfigDescriptor.c \
$(LUFA_ROOT_PATH)/Drivers/USB/HighLevel/Events.c \
$(LUFA_ROOT_PATH)/Drivers/USB/HighLevel/USBTask.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/HIDParser.c
LUFA_SRC_USBCLASS = $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/Audio.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/CDC.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/HID.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MassStorage.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MIDI.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/RNDIS.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/CDC.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/HID.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MassStorage.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MIDI.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/Printer.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/RNDIS.c \
$(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/StillImage.c
LUFA_SRC_TEMPERATURE = $(LUFA_ROOT_PATH)/Drivers/Board/Temperature.c
LUFA_SRC_SERIAL = $(LUFA_ROOT_PATH)/Drivers/Peripheral/Serial.c
LUFA_SRC_SERIALSTREAM = $(LUFA_ROOT_PATH)/Drivers/Peripheral/SerialStream.c
LUFA_SRC_TWI = $(LUFA_ROOT_PATH)/Drivers/Peripheral/TWI.c
LUFA_SRC_SCHEDULER = $(LUFA_ROOT_PATH)/Scheduler/Scheduler.c
# Check to see if the LUFA_PATH variable has not been set (the makefile is not being included from a project makefile)
ifeq ($(origin LUFA_PATH), undefined)
LUFA_SRC_FILES = $(LUFA_SRC_USB) $(LUFA_SRC_USBCLASS) \
$(LUFA_SRC_TEMPERATURE) $(LUFA_SRC_SERIAL) \
$(LUFA_SRC_SERIALSTREAM) $(LUFA_SRC_TWI) \
$(LUFA_SRC_SCHEDULER)
all:
clean:
rm -f $(LUFA_SRC_FILES:%.c=%.o)
clean_list:
clean_list:
doxygen:
doxygen:
@echo Generating Library Documentation...
( cat Doxygen.conf ; echo "PROJECT_NUMBER=`grep LUFA_VERSION_STRING Version.h | cut -d'"' -f2`" ) | doxygen -
@echo Documentation Generation Complete.
clean_doxygen:
clean_doxygen:
rm -rf Documentation
.PHONY: all clean clean_list doxygen clean_doxygen
endif