source: rtems/make/custom/simhppa.cfg @ 969de1f3

4.104.114.84.95
Last change on this file since 969de1f3 was b8a30d07, checked in by Joel Sherrill <joel.sherrill@…>, on 07/13/00 at 15:05:38

Patch rtems-rc-20000713-1-cvs.diff from Ralf Corsepius <corsepiu@…>
that is yet another multilib-related structual cleanup patch:

Changes:

  • Make RTEMS_TEST_NO_PAUSE a tests/ subpackage specific option.
    • Remove RTEMS_TEST_NO_PAUSE from custom/*.cfg, targopts.h and cpuopts.h.
    • Add autoconf macros RTEMS_*_RTEMS_TEST_NO_PAUSE (aclocal/rtems-test-no-pause.m4).
    • Add RTEMS_*_RTEMS_TEST_NO_PAUSE support to sptests/configure.ins and tmtests/configure.in. These are the only subdirectories which currently apply RTEMS_TEST_NO_PAUSE.
    • Add autoconf-DEFS support to all test subpackages' configure.ins below tests/. I.e. AC_DEFINES now get explicitly propagated as preprocessor defines into Makefiles, cf. AM_CPPFLAGS in tests/*/*.am, instead of using a global config-files.
    • Remove NDEBUG from custom/*.cfg.
  • AC_DEFINE POSIX_API, ITRON_API and MULTIPROCESSING in exec/configure.in, only.
    • All other sources now should relay on the values from cpuopts.h and should not define them themselves.
    • Several related changes to many configure.ins
  • Bug-fixes to RTEMS_*_RTEMS_DEBUG macros (Actually workarounds to quoting bugs in autoconf).

Notes:

  • This patch is rather immature and only tested for a small subset of BSPs (requires the tests to be enabled and therefore takes an tremendous amount of disc space and time.)
  • The patches to *cfg were generated by a script. Expect file formating changes :)
  • Property mode set to 100644
File size: 3.4 KB
Line 
1#
2#  Config file for the 7100 pa-risc simulator
3#
4#  $Id$
5#
6
7include $(RTEMS_ROOT)/make/custom/default.cfg
8
9RTEMS_CPU=hppa1.1
10RTEMS_CPU_MODEL=hppa7200
11
12# This is the actual bsp directory used during the build process.
13RTEMS_BSP_FAMILY=simhppa
14
15#  This contains the compiler options necessary to select the CPU model
16#  and (hopefully) optimize for it.
17#
18#  Possibles:
19#  -mpa-risc-1-1        -- HPPA 1.1 instead of 1.0
20#  -mportable-runtime
21#
22CPU_CFLAGS = -mpa-risc-1-1 -mportable-runtime
23
24# Possibles:
25#  -Wall                -- lots of warnings
26#  -pipe                -- compiler uses pipes to talk to phases (usually faster)
27#  -ansi                -- ANSI C compliance
28#  -fasm                -- ANSI, but allow inline assembler
29#  -mgas                -- we are using gas as assembler
30#  -fno-keep-inline-functions  -- do not emit any inlines as static
31CFLAGS_DEFAULT = $(CPU_CFLAGS) -Wall -ansi -fasm -mgas
32
33# optimize flag: typically -0, could use -O4 or -fast
34# -O4 is ok for RTEMS
35# NOTE: some level of -O may be actually required by inline assembler
36CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions
37
38#  This makes the target dependent options file.
39
40#  SIMHPPA_FAST_IDLE (simhppa)
41#     If defined, speed up the clock ticks while the idle task is running so
42#     time spent in the idle task is minimized.  This significantly reduces
43#     the wall time required to execute the RTEMS test suites.
44#
45
46define make-target-options
47        @echo "#define SIMHPPA_FAST_IDLE  1 "               >>$@
48endef
49
50#
51# GNU ld options
52#   `-Tbss ORG'
53#   `-Tdata ORG'
54#   `-Ttext ORG'
55#      Use ORG as the starting address for--respectively--the `bss',
56#      `data', or the `text' segment of the output file.  ORG must be a
57#      single hexadecimal integer; for compatibility with other linkers,
58#      you may omit the leading `0x' usually associated with hexadecimal
59#      values.
60
61# 'NODE' is set to 1 or 2 for multi cpu tests (ref: mptests/mp01/node1/Makefile)
62# If NODE is set as an environment variable, don't trust it, zero it out.
63# (NODE turns out to be a very common environment variable)
64ifeq (,$(NODE))
65NODE=0
66else
67ifeq "$(origin NODE)" "environment"
68NODE=0
69endif
70endif
71
72# XXX some/all of this should move into 'linkcmds'
73# single processor
74DATA_0_BASE=0x40001000
75TEXT_0_BASE=0x00001000
76
77# first node (mptests number them from 1)
78DATA_1_BASE=$(DATA_0_BASE)
79TEXT_1_BASE=$(TEXT_0_BASE)
80
81# second node (mptests number them from 1)
82DATA_2_BASE=0x48001000
83TEXT_2_BASE=0x08001000
84
85# for hpux ld
86#LD_LOC_OPTIONS=-D $(DATA_$(NODE)_BASE) -R $(TEXT_$(NODE)_BASE)
87# for gnu ld
88LD_LOC_OPTIONS=-Tdata $(DATA_$(NODE)_BASE) -Ttext $(TEXT_$(NODE)_BASE)
89GCC_LD_LOC_OPTIONS=-W,l-T -W,ldata -W,l$(DATA_$(NODE)_BASE) \
90                   -W,l-T -W,ltext -W,l$(TEXT_$(NODE)_BASE)
91
92# The following are definitions of make-exe which will work using ld as
93# is currently required.  It is expected that as of gcc 2.8, the end user
94# will be able to override parts of the compilers specs and link using gcc.
95
96ifeq ($(RTEMS_USE_GCC272),yes)
97define make-exe
98        $(LDARGS) $(LD) $(LD_LOC_OPTIONS) $(XLDFLAGS) -a archive \
99            -o $@ -u atexit \
100            $(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
101        $(NM) -g -n $@ > $(basename $@).num
102        $(SIZE) $@
103endef
104else
105define make-exe
106        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) $(GCC_LD_LOC_OPTIONS) \
107            -o $@ \
108            $(LINK_OBJS) $(LINK_LIBS)
109        $(NM) -g -n $@ > $(basename $@).num
110        $(SIZE) $@
111endef
112endif
113
114# Miscellaneous additions go here
115
116# BSP-specific tools
117PRINTDUMP=$(PROJECT_TOOLS)/print_dump
Note: See TracBrowser for help on using the repository browser.