source: rtems/make/custom/i386ex.cfg @ 39607984

4.104.114.84.95
Last change on this file since 39607984 was 39607984, checked in by Joel Sherrill <joel.sherrill@…>, on 07/12/00 at 19:23:14

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

Changes:

  • Make RTEMS_DEBUG a global per-cpu configuration option
  • Remove RTEMS_DEBUG from targopts.h
  • Add a global --enable-rtems-debug option disabled by default.
  • Add RTEMS_DEBUG to cpuopts.h
  • Remove all references to RTEMS_DEBUG from custom/*.cfg

Notes:

  • RTEMS_DEBUG is set in c/src/exec/configure.in only (RTEMS_CHECK_RTEMS_DEBUG) and should be defined in cpuopts.h only. BSPs should not redefine it, but use the value being provided by cpuopts.h. => With multilibs, users have to choose: Either enable RTEMS_DEBUG

for all BSPs and CPU_MODELs of a cpu or not.

  • Only few BSPs had RTEMS_DEBUG enabled, therefore I set the default to disabled.
  • This patch influences the per-BSP building scheme. Existing BSPs which set RTEMS_DEBUG in their make-target-options rule might have problems at runtime.
  • Property mode set to 100644
File size: 2.3 KB
Line 
1#
2#  Config file for the i386ex BSP
3#
4#  $Id$
5#
6
7include $(RTEMS_ROOT)/make/custom/default.cfg
8
9RTEMS_CPU=i386
10RTEMS_CPU_MODEL=i386_nofp
11
12# This is the actual bsp directory used during the build process.
13RTEMS_BSP_FAMILY=i386ex
14
15#  This contains the compiler options necessary to select the CPU model
16#  and (hopefully) optimize for it.
17#
18CPU_CFLAGS =
19
20# optimize flag: typically -0, could use -O4 or -fast
21# -O4 is ok for RTEMS
22# -fomit-frame-pointer breaks debugging and C++ exceptions
23CFLAGS_OPTIMIZE_V=-O4
24
25#  This section makes the target dependent options file.
26
27#  NDEBUG (C library)
28#     if defined asserts do not generate code.  This is commonly used
29#     as a command line option.
30#
31#  RTEMS_TEST_NO_PAUSE (RTEMS tests)
32#     do not pause between screens of output in the rtems tests
33#
34
35define make-target-options
36        @echo "/* #define NDEBUG 1 */ "                     >>$@
37        @echo "#define RTEMS_TEST_NO_PAUSE 1"               >>$@
38endef
39
40#  Something like this should produce a map file but this does not work.
41
42#     -Xlinker "-Map $(basename $@).map" $(LINK_OBJS)
43#
44#  This is a good way to get debug information.  The rdmp file is large
45#  though (1.9 Mb for hello) and greatly slows the build process.
46# $(OBJDUMP) -x -m i386 -d $(basename $@).coff > $(basename $@).rdmp
47
48# The following are definitions of make-exe which will work using ld as
49# is currently required.  It is expected that as of gcc 2.8, the end user
50# will be able to override parts of the compilers specs and link using gcc.
51
52ifeq ($(RTEMS_USE_GCC272),yes)
53define make-exe
54        $(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).coff \
55            -noinhibit-exec -Map $(basename $@).map \
56            $(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
57        $(OBJCOPY) -O srec $(basename $@).coff $(basename $@).i
58        $(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
59                  $(PACKHEX) > $(basename $@).exe
60        $(NM) -g -n $(basename $@).coff > $(basename $@).num
61        $(SIZE) $(basename $@).coff
62endef
63else
64define make-exe
65        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).coff \
66            $(LINK_OBJS) $(LINK_LIBS)
67        $(OBJCOPY) -O srec $(basename $@).coff $(basename $@).i
68        $(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
69                  $(PACKHEX) > $(basename $@).exe
70        $(NM) -g -n $(basename $@).coff > $(basename $@).num
71        $(SIZE) $(basename $@).coff
72endef
73endif
74
75# Miscellaneous additions go here
76
Note: See TracBrowser for help on using the repository browser.