@ -59,51 +59,60 @@ endif
i n c l u d e $( TOPDIR ) / c o n f i g . m k
ELF = hello_world
SREC = hello_world.srec
BIN = hello_world.bin hello_world
BIN = hello_world.bin
i f e q ( $( CPU ) , m p c 8 x x )
ELF = test_burst
SREC = test_burst.srec
BIN = test_burst.bin test_burst
BIN = test_burst.bin
e n d i f
i f e q ( $( ARCH ) , i 3 8 6 )
SREC += 82559_eeprom.srec
BIN += 82559_eeprom.bin 82559_eeprom
ELF += 82559_eeprom
SREC += 82559_eeprom.srec
BIN += 82559_eeprom.bin
e n d i f
i f e q ( $( ARCH ) , p p c )
SREC += sched.srec
BIN += sched.bin sched
ELF += sched
SREC += sched.srec
BIN += sched.bin
e n d i f
i f e q ( $( ARCH ) , b l a c k f i n )
ELF += smc91111_eeprom
SREC += smc91111_eeprom.srec
BIN += smc91111_eeprom.bin smc91111_eeprom
BIN += smc91111_eeprom.bin
e n d i f
# The following example is pretty 8xx specific...
i f e q ( $( CPU ) , m p c 8 x x )
SREC += timer.srec
BIN += timer.bin timer
ELF += timer
SREC += timer.srec
BIN += timer.bin
e n d i f
# The following example is 8260 specific...
i f e q ( $( CPU ) , m p c 8 2 6 0 )
SREC += mem_to_mem_idma2intr.srec
BIN += mem_to_mem_idma2intr.bin mem_to_mem_idma2intr
ELF += mem_to_mem_idma2intr
SREC += mem_to_mem_idma2intr.srec
BIN += mem_to_mem_idma2intr.bin
e n d i f
# Demo for 52xx IRQs
i f e q ( $( CPU ) , m p c 5 x x x )
SREC += interrupt.srec
BIN += interrupt.bin interrupt
ELF += interrupt
SREC += interrupt.srec
BIN += interrupt.bin
e n d i f
# Utility for resetting i82559 EEPROM
i f e q ( $( BOARD ) , o x c )
SREC += eepro100_eeprom.srec
BIN += eepro100_eeprom.bin eepro100_eeprom
ELF += eepro100_eeprom
SREC += eepro100_eeprom.srec
BIN += eepro100_eeprom.bin
e n d i f
i f e q ( $( BIG_ENDIAN ) , y )
@ -126,6 +135,7 @@ LIBOBJS = $(addprefix $(obj),$(LIBAOBJS) $(LIBCOBJS))
SRCS := $( COBJS:.o= .c) $( LIBCOBJS:.o= .c) $( if $( LIBAOBJS) ,$( LIBAOBJS:.o= .S) )
OBJS := $( addprefix $( obj) ,$( COBJS) )
ELF := $( addprefix $( obj) ,$( ELF) )
BIN := $( addprefix $( obj) ,$( BIN) )
SREC := $( addprefix $( obj) ,$( SREC) )
@ -134,19 +144,23 @@ clibdir := $(shell dirname `$(CC) $(CFLAGS) -print-file-name=libc.a`)
CPPFLAGS += -I..
all : $( obj ) .depend $( OBJS ) $( LIB ) $( SREC ) $( BIN )
all : $( obj ) .depend $( OBJS ) $( LIB ) $( SREC ) $( BIN ) $( ELF )
#########################################################################
$(LIB) : $( obj ) .depend $( LIBOBJS )
$( AR) $( ARFLAGS) $@ $( LIBOBJS)
$(ELF) :
$(obj)% : $( obj ) %.o $( LIB )
$( LD) -g $( EX_LDFLAGS) -Ttext $( LOAD_ADDR) \
-o $@ -e $( notdir $( <:.o= ) ) $< $( LIB) \
-L$( gcclibdir) -lgcc
$(SREC) :
$(obj)%.srec : $( obj ) %
$( OBJCOPY) -O srec $< $@ 2>/dev/null
$(BIN) :
$(obj)%.bin : $( obj ) %
$( OBJCOPY) -O binary $< $@ 2>/dev/null