#
# LUFA Library
-# Copyright (C) Dean Camera, 2010.
-#
+# Copyright (C) Dean Camera, 2021.
+#
# dean [at] fourwalledcubicle [dot] com
-# www.fourwalledcubicle.com
+# www.lufa-lib.org
#
+# ---------------------------------------
+# Makefile for the LUFA library itself.
+# ---------------------------------------
+
+LUFA_VERSION_NUM := $(shell grep LUFA_VERSION_STRING Version.h | cut -d'"' -f2)
+
+# Default target - no default action when attempting to build the core directly
+all:
+
+# Display the LUFA version of this library copy
+version:
+ @echo "LUFA $(LUFA_VERSION_NUM)"
-# Makefile for the LUFA library itself.
-
-LUFA_SRC_FILES = ./Drivers/USB/LowLevel/DevChapter9.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 \
-
-LUFA_Events.lst:
- @echo
- @echo Generating LUFA event name list...
- @$(shell) cat `find ./ -name "*.h"` | grep -E "EVENT_[^\(]*\(" | \
- sed -n -e 's/^.*EVENT_/EVENT_/p' | \
- cut -d'(' -f1 | sort | uniq | tee LUFA_Events.lst
-
-all: LUFA_Events.lst
+LUFA_PATH := .
+ARCH := {AVR8,UC3,XMEGA}
+DOXYGEN_OVERRIDE_PARAMS := QUIET=YES PROJECT_NUMBER=$(LUFA_VERSION_NUM)
+# Remove all object and associated files from the LUFA library core
clean:
- rm -f $(LUFA_SRC_FILES:%.c=%.o)
- rm -f LUFA_Events.lst
-
-clean_list:
-
-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:
- rm -rf Documentation
+ rm -f $(LUFA_SRC_ALL_FILES:%.c=%.o)
+ rm -f $(LUFA_SRC_ALL_FILES:%.c=%.d)
+ rm -f $(LUFA_SRC_ALL_FILES:%.c=%.lst)
+
+# Include LUFA-specific DMBS extension modules
+DMBS_LUFA_PATH ?= $(LUFA_PATH)/Build/LUFA
+include $(DMBS_LUFA_PATH)/lufa-sources.mk
+
+# Include common DMBS build system modules
+DMBS_PATH ?= $(LUFA_PATH)/Build/DMBS/DMBS
+include $(DMBS_PATH)/core.mk
+include $(DMBS_PATH)/doxygen.mk
+
+.PHONY: all version