Subversion Repositories HomeAutomation

Rev

Rev 1981 | Rev 1992 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 1981 Rev 1984
Line 121... Line 121...
121
# only used for heap (malloc()).
121
# only used for heap (malloc()).
122
#EXTMEMOPTS = -Wl,--defsym=__heap_start=0x801100,--defsym=__heap_end=0x80ffff
122
#EXTMEMOPTS = -Wl,--defsym=__heap_start=0x801100,--defsym=__heap_end=0x80ffff
123
 
123
 
124
EXTMEMOPTS =
124
EXTMEMOPTS =
125
 
125
 
126
BIOSOPTS = -Wl,-L$(BIOSDIR),-Tdata,$(BIOS_RAM_END) -lbios
126
BIOSOPTS = -Wl,-L$(BIOSDIR),-Tdata,$(BIOS_RAM_END) 
127
 
127
 
128
# Linker flags.
128
# Linker flags.
129
#  -Wl,...:     tell GCC to pass this to linker.
129
#  -Wl,...:     tell GCC to pass this to linker.
130
#    -Map:      create map file
130
#    -Map:      create map file
131
#    --cref:    add cross reference to  map file
131
#    --cref:    add cross reference to  map file
132
LDFLAGS = -Wl,-Map=$(TARGET).map,--cref
132
LDFLAGS = -Wl,-Map=$(TARGET).map,--cref
133
LDFLAGS += $(EXTMEMOPTS)
133
LDFLAGS += $(EXTMEMOPTS)
134
LDFLAGS += $(BIOSOPTS)
134
LDFLAGS += $(BIOSOPTS)
135
LDFLAGS += $(PRINTF_LIB) $(SCANF_LIB) $(MATH_LIB)
-
 
136
 
135
 
-
 
136
LDLIBS += $(PRINTF_LIB) $(SCANF_LIB) $(MATH_LIB)
-
 
137
LDLIBS += -lbios
137
# ---------------------------------------------------------------------------
138
# ---------------------------------------------------------------------------
138
 
139
 
139
# Define programs and commands.
140
# Define programs and commands.
140
SHELL = sh
141
SHELL = sh
141
CC = avr-gcc
142
CC = avr-gcc
Line 168... Line 169...
168
MSG_ASSEMBLING = Assembling:
169
MSG_ASSEMBLING = Assembling:
169
MSG_DEPEND = Generating dependencies:
170
MSG_DEPEND = Generating dependencies:
170
MSG_CLEANING = Cleaning project:
171
MSG_CLEANING = Cleaning project:
171
MSG_CREATE = Creating:
172
MSG_CREATE = Creating:
172
 
173
 
-
 
174
#First filter out all .a library files
-
 
175
SOURCES_FILTER = 
173
# Define all object files.
176
# Define all object files.
174
#OBJ = $(filter %.o,$(SOURCES:.c=.o) $(SOURCES:.S=.o))
177
#OBJ = $(filter %.o,$(SOURCES:.c=.o) $(SOURCES:.S=.o))
175
OBJ = $(addsuffix .o,$(basename $(SOURCES)))
178
OBJ = $(addsuffix .o,$(basename $(SOURCES)))
176
 
179
 
177
# Define all listing files.
180
# Define all listing files.
Line 267... Line 270...
267
# AVRs, making it impossible to override the .data placement with a
270
# AVRs, making it impossible to override the .data placement with a
268
# subsequent -Tdata option. Detect the broken case and re-run ld with the
271
# subsequent -Tdata option. Detect the broken case and re-run ld with the
269
# correct .data location substituted.
272
# correct .data location substituted.
270
%.elf: $(OBJ)
273
%.elf: $(OBJ)
271
	@echo $(MSG_LINKING) $@
274
	@echo $(MSG_LINKING) $@
272
	@eval $$($(CC) -v $(CFLAGS) -o $@ $^ $(LDFLAGS) 2>&1 | $(AWK) '{ if (gsub("0x800100","$(BIOS_RAM_END)") == 1) print }')
275
	eval $$($(CC) -v $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) 2>&1 | $(AWK) '{ if (gsub("0x800100","$(BIOS_RAM_END)") == 1) print }')
-
 
276
 
-
 
277
#$(LDLIBS)
273
 
278
 
274
# Compile: create object files from C source files.
279
# Compile: create object files from C source files.
275
%.o : %.c
280
%.o : %.c
276
	@echo $(MSG_COMPILING) $<
281
	@echo $(MSG_COMPILING) $<
277
	@$(CC) -c $(CFLAGS) $< -o $@ 
282
	@$(CC) -c $(CFLAGS) $< -o $@