3 # Copyright (C) Dean Camera, 2011.
5 # dean [at] fourwalledcubicle [dot] com
9 # Makefile for the LUFA library itself. This can be used to generate the library documentation.
12 # Check to see if the LUFA_PATH variable has not been set (the makefile is not being included from a project makefile)
13 ifeq ($(origin LUFA_PATH), undefined)
17 LUFA_ROOT_PATH = $(LUFA_PATH)/LUFA
20 # Check to see if the chip architecture has not been defined in the user makefile, set a default architecture if not
21 ifeq ($(origin ARCH), undefined)
25 # Define module source file lists
26 LUFA_SRC_USB = $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Device_$(ARCH).c \
27 $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Endpoint_$(ARCH).c \
28 $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Host_$(ARCH).c \
29 $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Pipe_$(ARCH).c \
30 $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBController_$(ARCH).c \
31 $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBInterrupt_$(ARCH).c \
32 $(LUFA_ROOT_PATH)/Drivers/USB/Core/ConfigDescriptor.c \
33 $(LUFA_ROOT_PATH)/Drivers/USB/Core/DeviceStandardReq.c \
34 $(LUFA_ROOT_PATH)/Drivers/USB/Core/Events.c \
35 $(LUFA_ROOT_PATH)/Drivers/USB/Core/EndpointStream.c \
36 $(LUFA_ROOT_PATH)/Drivers/USB/Core/HostStandardReq.c \
37 $(LUFA_ROOT_PATH)/Drivers/USB/Core/PipeStream.c \
38 $(LUFA_ROOT_PATH)/Drivers/USB/Core/USBTask.c \
39 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Common/HIDParser.c
40 LUFA_SRC_USBCLASS = $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/Audio.c \
41 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/CDC.c \
42 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/HID.c \
43 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MassStorage.c \
44 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MIDI.c \
45 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/RNDIS.c \
46 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/CDC.c \
47 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/HID.c \
48 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MassStorage.c \
49 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MIDI.c \
50 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/Printer.c \
51 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/RNDIS.c \
52 $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/StillImage.c
53 LUFA_SRC_TEMPERATURE = $(LUFA_ROOT_PATH)/Drivers/Board/Temperature.c
54 LUFA_SRC_SERIAL = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/Serial_$(ARCH).c
55 LUFA_SRC_TWI = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/TWI_$(ARCH).c
56 LUFA_SRC_SCHEDULER = $(LUFA_ROOT_PATH)/Scheduler/Scheduler.c
59 # Check to see if the LUFA_PATH variable has not been set (the makefile is not being included from a project makefile)
60 ifeq ($(origin LUFA_PATH), undefined)
61 LUFA_SRC_ALL_FILES = $(LUFA_SRC_USB) $(LUFA_SRC_USBCLASS) \
62 $(LUFA_SRC_TEMPERATURE) $(LUFA_SRC_SERIAL) \
63 $(LUFA_SRC_TWI) $(LUFA_SRC_SCHEDULER)
68 rm -f $(LUFA_SRC_ALL_FILES:%.c=%.o)
69 rm -f $(LUFA_SRC_ALL_FILES:%.c=%.lst)
74 @echo Generating Library Documentation...
75 ( cat Doxygen.conf ; echo "PROJECT_NUMBER=`grep LUFA_VERSION_STRING Version.h | cut -d'"' -f2`" ) | doxygen -
76 @echo Documentation Generation Complete.
81 .PHONY: all clean clean_list doxygen clean_doxygen