#include <LUFA/Drivers/Misc/TerminalCodes.h>\r
\r
#if (ARCH == ARCH_AVR8)\r
- #include <LUFA/Drivers/Peripheral/Serial.h>\r
- #include <LUFA/Drivers/Peripheral/TWI.h>\r
- #include <LUFA/Drivers/Peripheral/ADC.h>\r
+ #if defined(TWCR)\r
+ #include <LUFA/Drivers/Peripheral/TWI.h>\r
+ #endif\r
+\r
+ #if defined(ADC)\r
+ #include <LUFA/Drivers/Peripheral/ADC.h>\r
+ #endif\r
+\r
+ #include <LUFA/Drivers/Peripheral/Serial.h> \r
#include <LUFA/Drivers/Peripheral/SPI.h>\r
#include <LUFA/Drivers/Peripheral/SerialSPI.h>\r
#elif (ARCH == ARCH_XMEGA)\r
# all module headers in a simple C and C++\r
# application.\r
\r
-all:\r
+\r
+# List of device families per architecture, one device per architecture sub-family\r
+AVR8_FAMILIES = at90usb1287 at90usb1286 atmega32u4 atmega32u2\r
+XMEGA_FAMILIES = atxmega128a1u atxmega128a3u atxmega128a4u atxmega128b1 atxmega128b3\r
+UC3_FAMILIES = uc3a0256 uc3a1256 uc3a3256 uc3a4256 uc3b0256 uc3b1256\r
+\r
+# List of all device families, with a family postfix\r
+DEVICE_FAMILIES = $(AVR8_FAMILIES:%=%.avr8) $(XMEGA_FAMILIES:%=%.xmega) $(UC3_FAMILIES:%=%.uc3)\r
+\r
+\r
+all: begin $(DEVICE_FAMILIES) end\r
+\r
+begin:\r
@echo Executing build test "ModuleTest".\r
@echo\r
\r
+end:\r
+ @echo Build test "ModuleTest" complete.\r
+ @echo\r
+\r
+%.avr8:\r
$(MAKE) -f makefile.avr8 clean\r
- $(MAKE) -f makefile.avr8\r
+ $(MAKE) -f makefile.avr8 all MCU=$(@:%.avr8=%)\r
\r
+%.xmega:\r
$(MAKE) -f makefile.xmega clean\r
- $(MAKE) -f makefile.xmega\r
+ $(MAKE) -f makefile.xmega all MCU=$(@:%.xmega=%)\r
\r
+%.uc3:\r
$(MAKE) -f makefile.uc3 clean\r
- $(MAKE) -f makefile.uc3\r
-\r
- @echo Build test "ModuleTest" complete.\r
- @echo\r
+ $(MAKE) -f makefile.uc3 all MCU=$(@:%.uc3=%)\r
\r
clean:\r
$(MAKE) -f makefile.avr8 clean\r