3 #     Copyright (C) Dean Camera, 2015.
 
   5 #  dean [at] fourwalledcubicle [dot] com
 
   8 # --------------------------------------
 
   9 #         LUFA Project Makefile.
 
  10 # --------------------------------------
 
  12 # Run "make help" for target help.
 
  20 SRC          = $(TARGET)_C.c $(TARGET)_CPP.cpp Dummy.S $(LUFA_SRC_USB)
 
  21 LUFA_PATH    = ../../LUFA
 
  26 else ifeq ($(ARCH), XMEGA)
 
  28 else ifeq ($(ARCH), UC3)
 
  32 # Generic C/C++ compiler flags
 
  35 CC_FLAGS += -Wformat=2
 
  36 CC_FLAGS += -Winit-self
 
  37 CC_FLAGS += -Wswitch-enum
 
  40 CC_FLAGS += -Wpointer-arith
 
  41 CC_FLAGS += -Wcast-align
 
  42 CC_FLAGS += -Wwrite-strings
 
  43 CC_FLAGS += -Wlogical-op
 
  44 CC_FLAGS += -Wmissing-declarations
 
  45 CC_FLAGS += -Wmissing-field-initializers
 
  46 CC_FLAGS += -Wmissing-format-attribute
 
  47 CC_FLAGS += -Woverlength-strings
 
  48 CC_FLAGS += -Wswitch-default
 
  49 CC_FLAGS += -Wfloat-equal
 
  50 CC_FLAGS += -Waggregate-return
 
  51 CC_FLAGS += -Wmissing-include-dirs
 
  53 # Disable warnings not supported by the version of GCC used for UC3 targets (FIXME)
 
  55   CC_FLAGS += -Wdouble-promotion
 
  58 # Only enable redundant declaration warnings for AVR8 target (FIXME)
 
  60   CC_FLAGS += -Wredundant-decls
 
  63 # C compiler only flags
 
  64 C_FLAGS += -Wmissing-parameter-type
 
  65 C_FLAGS += -Wmissing-prototypes
 
  66 C_FLAGS += -Wnested-externs
 
  67 C_FLAGS += -Wbad-function-cast
 
  68 C_FLAGS += -Wstrict-prototypes
 
  69 C_FLAGS += -Wold-style-definition
 
  71 # Disable warnings not supported by the version of GCC used for UC3 targets (FIXME)
 
  73   C_FLAGS += -Wunsuffixed-float-constants
 
  74   C_FLAGS += -Wjump-misses-init
 
  77 # Only check C++ compatibility on the build files, to ensure headers are C++ compatible
 
  78 Test_C.c Test_CPP.c: CC_FLAGS += -Wc++-compat
 
  80 # Potential additional warnings to enable in the future (FIXME)
 
  81 #CC_FLAGS += -Wcast-qual
 
  82 #CC_FLAGS += -Wconversion
 
  83 #CC_FLAGS += -Wsign-conversion
 
  84 #CC_FLAGS += -pedantic
 
  86 # Include LUFA build script makefiles
 
  87 include $(LUFA_PATH)/Build/lufa_sources.mk
 
  88 include $(LUFA_PATH)/Build/lufa_build.mk