# Even though the DOS/Win* filesystem matches both .s and .S the same,\r
# it will preserve the spelling of the filenames, and gcc itself does\r
# care about how the name is spelled on its command-line.\r
-ASRC = Dummy.S\r
+ASRC = Dummy.S \\r
+ $(LUFA_PATH)/LUFA/Platform/UC3/Exception.S\r
\r
\r
# Optimization level, can be [0, 1, 2, 3, s]. \r
CFLAGS += -funsigned-bitfields\r
CFLAGS += -ffunction-sections\r
CFLAGS += -fno-strict-aliasing\r
-CFLAGS += -Wall\r
-CFLAGS += -Wstrict-prototypes\r
CFLAGS += -masm-addr-pseudos\r
CFLAGS += -Wa,-adhlns=$(<:%.c=$(OBJDIR)/%.lst)\r
CFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS))\r
CFLAGS += $(CSTANDARD)\r
+CFLAGS += -Werror\r
+CFLAGS += -Wall\r
+CFLAGS += -Wextra\r
+CFLAGS += -Wstrict-prototypes\r
+CFLAGS += -Wformat=2\r
+CFLAGS += -Winit-self\r
+CFLAGS += -Wswitch-enum\r
+CFLAGS += -Wunused\r
+CFLAGS += -Wundef\r
+CFLAGS += -Wpointer-arith\r
+CFLAGS += -Wcast-align\r
+CFLAGS += -Wwrite-strings\r
+CFLAGS += -Wlogical-op\r
+CFLAGS += -Wmissing-parameter-type\r
+CFLAGS += -Wmissing-declarations\r
+CFLAGS += -Wmissing-field-initializers\r
+CFLAGS += -Wmissing-format-attribute\r
+#CFLAGS += -Wredundant-decls\r
+CFLAGS += -Wnested-externs\r
+CFLAGS += -Woverlength-strings\r
+#CFLAGS += -Wswitch-default\r
+#CFLAGS += -Wc++-compat\r
+#CFLAGS += -Wcast-qual\r
+#CFLAGS += -Wconversion\r
+#CFLAGS += -Wjump-misses-init\r
+#CFLAGS += -pedantic\r
\r
\r
#---------------- Compiler Options C++ ----------------\r
# files -- see avr-libc docs [FIXME: not yet described there]\r
# -listing-cont-lines: Sets the maximum number of continuation lines of hex \r
# dump that will be displayed for a given single line of source input.\r
-ASFLAGS = $(ADEFS) -Wa,-adhlns=$(<:%.S=$(OBJDIR)/%.lst),-gstabs,--listing-cont-lines=100\r
+ASFLAGS = $(ADEFS) -Wa,-adhlns=$(<:%.S=$(OBJDIR)/%.lst)\r
\r
\r
#---------------- Linker Options ----------------\r
\r
doxygen:\r
@echo Generating Project Documentation \($(TARGET)\)...\r
- @doxygen Doxygen.conf\r
+ @if ( doxygen Doxygen.conf 2>&1 | grep ": warning:" ;); then \\r
+ exit 1; \\r
+ fi;\r
@echo Documentation Generation Complete.\r
\r
clean_doxygen:\r