summaryrefslogblamecommitdiffstats
path: root/make/custom/leon2.cfg
blob: ddacffca4da29c3354d7e28797da9052be3811e2 (plain) (tree)




















                                                                         

                                               

                                                              






                                                     


                                                      





                                                                   
                                                                       








                                                                           





                                                                    

                                 
#
#  Config file for the European Space Agency ERC32 SPARC processor.
#
#  $Id$
#

include $(RTEMS_ROOT)/make/custom/default.cfg

RTEMS_CPU=sparc

ifeq ($(RTEMS_CPU_MODEL),leon1)
MSOFT_FLOAT = -msoft-float
else
RTEMS_CPU_MODEL=leon2
endif
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=leon

#   The -mflat avoids the use of save/restore instructions.  It has
#   a negative impact on the performance of RTEMS and should not be used.

# This had been used with gcc-2.7.2
# CPU_CFLAGS = -mno-v8 -mcypress $(MSOFT_FLOAT)
#     -mcpu=cypress says to optimize for a Cypress 60x chipset
CPU_CFLAGS = -mcpu=cypress $(MSOFT_FLOAT)

# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4

#  This makes the target dependent options file

#  NO_TABLE_MOVE (SPARC PORT)
#     do not have a second trap table -- use the BSP's
#
#  CPU_U32_FIX (all)
#     Needed to align received TCP/IP packets since SPARC does not 
#     support unaligned memory access.
#

define make-target-options
	@echo "#define NO_TABLE_MOVE 1"                            >>$@
	@echo "#define CPU_U32_FIX 1"                              >>$@
endef



# The following are definitions of make-exe which will work using ld as
# is currently required.  It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.

define make-exe
	$(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).exe \
	    $(LINK_OBJS) $(LINK_LIBS)
	$(NM) -g -n $(basename $@).exe > $(basename $@).num
	$(SIZE) $(basename $@).exe
endef
# Miscellaneous additions go here