Disable strict aliasing explicitly in the project makefiles, as this is apparently...
[pub/lufa.git] / Projects / Magstripe / makefile
index ace13c1..d6f2bd0 100644 (file)
 MCU = at90usb1287
 
 
-# Target board (see library "Board Types" documentation, USER or blank for projects not requiring
+# Target board (see library "Board Types" documentation, NONE for projects not requiring
 # LUFA board drivers). If USER is selected, put custom board drivers in a directory called 
 # "Board" inside the application directory.
-BOARD  = USER
+BOARD  = NONE
 
 
 # Processor frequency.
@@ -128,15 +128,16 @@ SRC = $(TARGET).c                                                 \
          Descriptors.c                                               \
          Lib/CircularBitBuffer.c                                     \
          $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/DevChapter9.c        \
+         $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/Device.c             \
          $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/Endpoint.c           \
          $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/Host.c               \
          $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/HostChapter9.c       \
          $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/LowLevel.c           \
          $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/Pipe.c               \
+         $(LUFA_PATH)/LUFA/Drivers/USB/LowLevel/USBInterrupt.c       \
+         $(LUFA_PATH)/LUFA/Drivers/USB/HighLevel/ConfigDescriptor.c  \
          $(LUFA_PATH)/LUFA/Drivers/USB/HighLevel/Events.c            \
-         $(LUFA_PATH)/LUFA/Drivers/USB/HighLevel/USBInterrupt.c      \
          $(LUFA_PATH)/LUFA/Drivers/USB/HighLevel/USBTask.c           \
-         $(LUFA_PATH)/LUFA/Drivers/USB/HighLevel/ConfigDescriptor.c  \
          $(LUFA_PATH)/LUFA/Drivers/USB/Class/Device/HID.c            \
          $(LUFA_PATH)/LUFA/Drivers/USB/Class/Host/HID.c              \
 
@@ -219,10 +220,11 @@ CFLAGS += $(CDEFS)
 CFLAGS += -O$(OPT)
 CFLAGS += -funsigned-char
 CFLAGS += -funsigned-bitfields
+CFLAGS += -ffunction-sections
 CFLAGS += -fno-inline-small-functions
 CFLAGS += -fpack-struct
 CFLAGS += -fshort-enums
-CFLAGS += -ffunction-sections
+CFLAGS += -fno-strict-aliasing
 CFLAGS += -Wall
 CFLAGS += -Wstrict-prototypes
 CFLAGS += -Wundef
@@ -466,7 +468,7 @@ ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS)
 
 
 # Default target.
-all: begin gccversion sizebefore build checkinvalidevents showliboptions showtarget sizeafter end
+all: begin gccversion sizebefore build showliboptions showtarget sizeafter end
 
 # Change the build target to build a HEX file or a library.
 build: elf hex eep lss sym
@@ -509,17 +511,6 @@ sizeafter:
        @if test -f $(TARGET).elf; then echo; echo $(MSG_SIZE_AFTER); $(ELFSIZE); \
        2>/dev/null; echo; fi
 
-$(LUFA_PATH)/LUFA/LUFA_Events.lst:
-       @make -C $(LUFA_PATH)/LUFA/ LUFA_Events.lst
-
-checkinvalidevents: $(LUFA_PATH)/LUFA/LUFA_Events.lst
-       @echo
-       @echo Checking for invalid events...
-       @$(shell) avr-nm $(TARGET).elf | sed -n -e 's/^.*EVENT_/EVENT_/p' | \
-                        grep -F -v --file=$(LUFA_PATH)/LUFA/LUFA_Events.lst > InvalidEvents.tmp || true
-       @sed -n -e 's/^/  WARNING - INVALID EVENT NAME: /p' InvalidEvents.tmp
-       @if test -s InvalidEvents.tmp; then exit 1; fi
-       
 showliboptions:
        @echo
        @echo ---- Compile Time Library Options ----
@@ -741,8 +732,8 @@ $(shell mkdir $(OBJDIR) 2>/dev/null)
 
 
 # Listing of phony targets.
-.PHONY : all checkinvalidevents showliboptions    \
-showtarget begin finish end sizebefore sizeafter  \
-gccversion build elf hex eep lss sym coff extcoff \
-program dfu flip flip-ee dfu-ee clean debug       \
-clean_list clean_binary gdb-config doxygen
\ No newline at end of file
+.PHONY : all showliboptions showtarget begin       \
+finish end sizebefore sizeafter gccversion build   \
+elf hex eep lss sym coff extcoff program dfu flip  \
+flip-ee dfu-ee clean debug clean_list clean_binary \
+clean_doxygen gdb-config doxygen
\ No newline at end of file