source: rtems/make/custom/ts_386ex.cfg @ 8aefe83

4.104.114.84.95
Last change on this file since 8aefe83 was 8aefe83, checked in by Joel Sherrill <joel.sherrill@…>, on 08/11/99 at 23:58:16

Patch from Tony R. Ambardar <tonya@…>:

I'm attaching a big patch for the ts_386ex BSP which adds and includes
the following:

1) Conversion to ELF format + minor code cleanups + documentation.

2) An Ada95 binding to FreeBSD sockets, based on Samuel Tardieu's

adasockets-0.1.3 package. This includes some sample applications.

3) Some Ada and C interfaces to add serial-port debugging to

programs. Comes with examples, too; the Ada one shows how
transparent adding the support can be. Note that Rosimildo sent me
the original C code.

The network stuff is not BSP specific, and could be added to your Ada
code collection. The debugging stuff is specific to the i386. Right
now, everything sits in my "tools" directory.

  • Property mode set to 100644
File size: 2.8 KB
Line 
1#
2#  Config file for the ts-386ex 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=ts_386ex
14
15#  This contains the compiler options necessary to select the CPU model
16#  and (hopefully) optimize for it. Enables software floating-point
17#  emulation since we don't have a i387 co-processor.
18#
19CPU_CFLAGS =-msoft-float -mno-fp-ret-in-387
20
21# optimize flag: typically -0, could use -O4 or -fast
22# -O4 is ok for RTEMS
23# -fomit-frame-pointer breaks debugging and C++ exceptions
24CFLAGS_OPTIMIZE_V= -O4
25
26#  This section makes the target dependent options file.
27
28#  NDEBUG (C library)
29#     if defined asserts do not generate code.  This is commonly used
30#     as a command line option.
31#
32#  RTEMS_TEST_NO_PAUSE (RTEMS tests)
33#     do not pause between screens of output in the rtems tests
34#
35#  RTEMS_DEBUG (RTEMS)
36#     If defined, debug checks in RTEMS and support library code are enabled.
37#
38#  BSP_DEBUG (BSP)
39#     Enables some debugging in the BSP package.
40#
41#  LOAD_RTC_AT_START (BSP)
42#     Initialize RTC and load into system clock at startup. This will break
43#     some tests.
44
45define make-target-options
46        @echo "/* #define NDEBUG 1 */ "                 >>$@
47        @echo "#define RTEMS_TEST_NO_PAUSE 1"           >>$@
48        @echo "#define RTEMS_DEBUG  1"                  >>$@
49        @echo "/* #define UARTDEBUG  1 */"                      >>$@
50        @echo "/* #define BSP_DEBUG  1 */"                      >>$@
51        @echo "#define LOAD_RTC_AT_START  1"            >>$@
52endef
53
54#  Something like this should produce a map file but this does not work.
55
56#     -Xlinker "-Map $(basename $@).map" $(LINK_OBJS)
57#
58#  This is a good way to get debug information.  The rdmp file is large
59#  though (1.9 Mb for hello) and greatly slows the build process.
60# $(OBJDUMP) -x -m i386 -d $(basename $@).coff > $(basename $@).rdmp
61
62# The following are definitions of make-exe which will work using ld as
63# is currently required.  It is expected that as of gcc 2.8, the end user
64# will be able to override parts of the compilers specs and link using gcc.
65
66ifeq ($(RTEMS_USE_GCC272),yes)
67define make-exe
68        $(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).coff \
69            -noinhibit-exec -Map $(basename $@).map \
70            $(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
71        $(OBJCOPY) -O srec $(basename $@).coff $(basename $@).i
72        $(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
73                  $(PACKHEX) > $(basename $@).exe
74        $(NM) -g -n $(basename $@).coff > $(basename $@).num
75        $(SIZE) $(basename $@).coff
76endef
77else
78define make-exe
79        $(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).elf \
80            $(LINK_OBJS) $(LINK_LIBS)
81        $(OBJCOPY) -O binary $(basename $@).elf $(basename $@).exe
82        $(NM) -g -n $(basename $@).elf > $(basename $@).num
83        $(SIZE) $(basename $@).elf
84endef
85endif
86
87# Miscellaneous additions go here
88
Note: See TracBrowser for help on using the repository browser.