3 # Copyright (C) Dean Camera, 2012.
5 # dean [at] fourwalledcubicle [dot] com
9 # Makefile for the module build test. This test
10 # attempts to build as many modules as possible
11 # under all supported architectures, and include
12 # all module headers in a simple C and C++
15 # Path to the LUFA library core
16 LUFA_PATH = ../../LUFA/
18 # List of device families per architecture, one device per architecture sub-family
19 AVR8_FAMILIES = at90usb1287 at90usb1286 atmega16u4 atmega16u2 at90usb162
20 XMEGA_FAMILIES = atxmega128a1u atxmega128a3u atxmega256a3bu atxmega128a4u atxmega128b1 atxmega128b3 atxmega128c3 atxmega32c4
21 UC3_FAMILIES = uc3a0256 uc3a1256 uc3a3256 uc3a4256 uc3b0256 uc3b1256
23 # List of all device families, with a family postfix
24 DEVICE_FAMILIES = $(AVR8_FAMILIES:%=%.avr8) $(XMEGA_FAMILIES:%=%.xmega) $(UC3_FAMILIES:%=%.uc3)
27 all: begin $(DEVICE_FAMILIES) clean end
29 arch_avr8: begin $(AVR8_FAMILIES:%=%.avr8) end
30 arch_xmega: begin $(XMEGA_FAMILIES:%=%.xmega) end
31 arch_uc3: begin $(UC3_FAMILIES:%=%.uc3) end
34 @echo Executing build test "ModuleTest".
38 @echo Build test "ModuleTest" complete.
42 $(MAKE) -s -f makefile.test clean elf ARCH=AVR8 MCU=$(@:%.avr8=%)
45 $(MAKE) -s -f makefile.test clean elf ARCH=XMEGA MCU=$(@:%.xmega=%)
48 $(MAKE) -s -f makefile.test clean elf ARCH=UC3 MCU=$(@:%.uc3=%)
51 $(MAKE) -s -f makefile.test clean ARCH=AVR8 MCU=$(firstword $(AVR8_FAMILIES))
52 $(MAKE) -s -f makefile.test clean ARCH=XMEGA MCU=$(firstword $(XMEGA_FAMILIES))
53 $(MAKE) -s -f makefile.test clean ARCH=UC3 MCU=$(firstword $(UC3_FAMILIES))
57 .PHONY: all arch_avr8 arch_xmega arch_uc3 begin end
59 # Include LUFA build script makefiles
60 include $(LUFA_PATH)/Build/lufa.core.in