From bffb93879940c71c58d2c66410e1bd5e5e4dc979 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 20 Jan 1998 19:30:30 +0000 Subject: Removed PROJECT_HOME and CONFIG_DIR variables. --- make/custom/simhppa.cfg | 145 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 make/custom/simhppa.cfg (limited to 'make/custom/simhppa.cfg') diff --git a/make/custom/simhppa.cfg b/make/custom/simhppa.cfg new file mode 100644 index 0000000000..0976b4d3f6 --- /dev/null +++ b/make/custom/simhppa.cfg @@ -0,0 +1,145 @@ +# +# Config file for the 7100 pa-risc simulator +# +# $Id$ +# + +include $(RTEMS_ROOT)/make/custom/default.cfg + +RTEMS_CPU=hppa1_1 +RTEMS_CPU_MODEL=hppa7200 + +# This is the actual bsp directory used during the build process. +RTEMS_BSP_FAMILY=simhppa + +# This contains the compiler options necessary to select the CPU model +# and (hopefully) optimize for it. +# +# Possibles: +# -mpa-risc-1-1 -- HPPA 1.1 instead of 1.0 +# -mportable-runtime +# +CPU_CFLAGS = -mpa-risc-1-1 -mportable-runtime + +# Possibles: +# -Wall -- lots of warnings +# -pipe -- compiler uses pipes to talk to phases (usually faster) +# -ansi -- ANSI C compliance +# -fasm -- ANSI, but allow inline assembler +# -mgas -- we are using gas as assembler +# -fno-keep-inline-functions -- do not emit any inlines as static +CFLAGS_DEFAULT = $(CPU_CFLAGS) -Wall -ansi -fasm -mgas + +# optimize flag: typically -0, could use -O4 or -fast +# -O4 is ok for RTEMS +# NOTE: some level of -O may be actually required by inline assembler +CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions + +# Define this to yes if this target supports multiprocessor environments. +HAS_MP=yes + +# This target does NOT support the KA9Q TCP/IP stack so ignore requests +# to enable it. +HAS_KA9Q=no + +# This makes the target dependent options file. + +# NDEBUG (C library) +# if defined asserts do not generate code. This is commonly used +# as a command line option. +# +# RTEMS_TEST_NO_PAUSE (RTEMS tests) +# do not pause between screens of output in the rtems tests +# +# STACK_CHECKER_ON (RTEMS support code) +# If defined, stack bounds checking is enabled. +# +# STACK_CHECKER_REPORT_USAGE (RTEMS support code) +# If this and STACK_CHECKER_ON are defined, then a report on stack usage +# per task is printed when the program exits. +# +# RTEMS_DEBUG (RTEMS) +# If defined, debug checks in RTEMS and support library code are enabled. +# +# SIMHPPA_FAST_IDLE (simhppa) +# If defined, speed up the clock ticks while the idle task is running so +# time spent in the idle task is minimized. This significantly reduces +# the wall time required to execute the RTEMS test suites. +# + +define make-target-options + @echo "/* #define NDEBUG 1 */ " >>$@ + @echo "#define RTEMS_TEST_NO_PAUSE 1" >>$@ + @echo "/* #define STACK_CHECKER_ON 1 */" >>$@ + @echo "/* #define STACK_CHECKER_REPORT_USAGE 1 */" >>$@ + @echo "/* #define RTEMS_DEBUG 1 */" >>$@ + @echo "#define SIMHPPA_FAST_IDLE 1 " >>$@ +endef + +# +# GNU ld options +# `-Tbss ORG' +# `-Tdata ORG' +# `-Ttext ORG' +# Use ORG as the starting address for--respectively--the `bss', +# `data', or the `text' segment of the output file. ORG must be a +# single hexadecimal integer; for compatibility with other linkers, +# you may omit the leading `0x' usually associated with hexadecimal +# values. + +# 'NODE' is set to 1 or 2 for multi cpu tests (ref: mptests/mp01/node1/Makefile) +# If NODE is set as an environment variable, don't trust it, zero it out. +# (NODE turns out to be a very common environment variable) +ifeq (,$(NODE)) +NODE=0 +else +ifeq "$(origin NODE)" "environment" +NODE=0 +endif +endif + +# XXX some/all of this should move into 'linkcmds' +# single processor +DATA_0_BASE=0x40001000 +TEXT_0_BASE=0x00001000 + +# first node (mptests number them from 1) +DATA_1_BASE=$(DATA_0_BASE) +TEXT_1_BASE=$(TEXT_0_BASE) + +# second node (mptests number them from 1) +DATA_2_BASE=0x48001000 +TEXT_2_BASE=0x08001000 + +# for hpux ld +#LD_LOC_OPTIONS=-D $(DATA_$(NODE)_BASE) -R $(TEXT_$(NODE)_BASE) +# for gnu ld +LD_LOC_OPTIONS=-Tdata $(DATA_$(NODE)_BASE) -Ttext $(TEXT_$(NODE)_BASE) +GCC_LD_LOC_OPTIONS=-W,l-T -W,ldata -W,l$(DATA_$(NODE)_BASE) \ + -W,l-T -W,ltext -W,l$(TEXT_$(NODE)_BASE) + + +# 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. + +ifeq ($(RTEMS_USE_GCC272),yes) +define make-exe + $(LDARGS) $(LD) $(LD_LOC_OPTIONS) $(XLDFLAGS) -a archive \ + -o $@ -u atexit \ + $(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group + $(NM) -g -n $@ > $(basename $@).num + $(SIZE) $@ +endef +else +define make-exe + $(CC) $(CFLAGS) $(CFLAGS_LD) $(GCC_LD_LOC_OPTIONS) \ + -o $(basename $@).exe $(LINK_OBJS) + $(NM) -g -n $@ > $(basename $@).num + $(SIZE) $@ +endef +endif + +define make-rel + $(LDARGS) $(LD) $(LDFLAGS_INCOMPLETE) $(XLDFLAGS) -o $@ $(OBJS) +endef -- cgit v1.2.3