X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=config.mk;h=c0473a157967ec98b33fce8a110ccac7b1277eba;hb=272271646858e81780184331f386656203223575;hp=0200fe1c9aeac86dadc63b93f2fa8452a9eba0ca;hpb=9f8402d19a3f058257171fe878facebab7017ba8;p=bertos.git diff --git a/config.mk b/config.mk old mode 100755 new mode 100644 index 0200fe1c..c0473a15 --- a/config.mk +++ b/config.mk @@ -10,6 +10,18 @@ # Author: Bernardo Innocenti # # $Log$ +# Revision 1.12 2007/09/29 16:57:39 bernie +# Better sparse support. +# +# Revision 1.11 2007/09/29 15:54:14 bernie +# Make demo Qt emulator compile again. +# +# Revision 1.10 2007/09/18 10:17:00 batt +# Merge from triface. +# +# Revision 1.9 2006/09/20 14:28:42 marco +# Add MOC. Changed OPTCFLAGS. +# # Revision 1.8 2006/09/19 17:50:56 bernie # Make native build the default. # @@ -35,9 +47,14 @@ # # Programmer type -# +# see local pgm_config.mk for programmer customization. +-include pgm_config.mk +DPROG ?= -V -c stk500 -P /dev/ttyS0 + # AVR ISP dongle that blows up easily -DPROG = -V -c stk500 -P /dev/ttyS0 +#DPROG = -V -c stk500 -P /dev/ttyS0 +#DPROG = -V -c jtag2slow +#-P /dev/ttyUSB0 # STK200 parallel cable #DPROG = -c stk200 -E noreset @@ -48,7 +65,13 @@ DPROG = -V -c stk500 -P /dev/ttyS0 # PonyProg serial programmer #DPROG = -c dasa2 -OPTCFLAGS = -ffunction-sections -fdata-sections -funsafe-loop-optimizations +# Set to 1 to build for embedded devices. +# e.g. produce target.elf instead of target and target_nostrip +EMBEDDED_TARGET = 1 +#EMBEDDED_TARGET = 0 + +OPTCFLAGS = -ffunction-sections -fdata-sections +#OPTCFLAGS = -funsafe-loop-optimizations # For AVRStudio #DEBUGCFLAGS = -gdwarf-2 @@ -59,18 +82,23 @@ DEBUGCFLAGS = -ggdb # # define some variables based on the AVR base path in $(AVR) # -CROSS = -#CROSS = avr- +CROSS = arm-elf- CC = $(CROSS)gcc CXX = $(CROSS)g++ AS = $(CC) -x assembler-with-cpp LD = $(CC) OBJCOPY = $(CROSS)objcopy +STRIP = $(CROSS)strip INSTALL = cp -a RM = rm -f RM_R = rm -rf RN = mv MKDIR_P = mkdir -p +SHELL = /bin/sh +CHECKER = sparse +DOXYGEN = doxygen +AVRDUDE = avrdude +FLEXCAT = $(top_srcdir)/tools/flexcat/flexcat # For conversion from ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB. COFFCONVERT=$(OBJCOPY) \ @@ -84,11 +112,6 @@ INCDIR = -I. -Ihw LIBDIR = lib OBJDIR = obj OUTDIR = images -SHELL = /bin/sh -DOXYGEN = doxygen -UISP = uisp -AVRDUDE = avrdude -FLEXCAT = $(top_srcdir)/tools/flexcat/flexcat # output format can be srec, ihex (avrobj is always created) FORMAT = srec @@ -101,16 +124,19 @@ DEP_FLAGS = -MMD -MP LIST_FLAGS = -Wa,-anhlmsd=$(@:.o=.lst) # Linker flags for generating map files -#bernie: bogus binutils from Fedora 6 can't cope with this -#MAP_FLAGS = -Wl,-Map=$(@:%.elf=%.map),--cref +ifeq ($(EMBEDDED_TARGET), 1) +MAP_FLAGS = -Wl,-Map=$(@:%.elf=%.map),--cref +else +MAP_FLAGS = +endif # Compiler warning flags for both C and C++ WARNFLAGS = \ -W -Wformat -Wall -Wundef -Wpointer-arith -Wcast-qual \ -Wcast-align -Wwrite-strings -Wsign-compare \ - -Wmissing-prototypes -Wmissing-noreturn \ + -Wmissing-noreturn \ -Wextra -Wstrict-aliasing=2 \ - -Wunsafe-loop-optimizations +# -Wunsafe-loop-optimizations # Compiler warning flags for C only C_WARNFLAGS = \ @@ -134,10 +160,10 @@ CPPAFLAGS = $(DEBUGCFLAGS) -MMD ASFLAGS = $(DEBUGCFLAGS) # Default linker flags -LDFLAGS = $(MAP_FLAGS) +#LDFLAGS = $(MAP_FLAGS) #bernie: does not complain for missing symbols! -#LDFLAGS = $(MAP_FLAGS) -Wl,--gc-sections +LDFLAGS = $(MAP_FLAGS) -Wl,--gc-sections # Flags for avrdude AVRDUDEFLAGS = $(DPROG)