source: rtems/make/custom/mcp750.cfg @ b8a30d07

4.104.114.84.95
Last change on this file since b8a30d07 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.8 KB
Line 
1#
2#  Config file for Motorola MCP750 -- a MPC750 CompactPCI board
3#
4#  $Id$
5#
6
7include $(RTEMS_ROOT)/make/custom/default.cfg
8
9RTEMS_CPU=powerpc
10RTEMS_CPU_MODEL=mpc750
11RTEMS_PPC_EXCEPTION_PROCESSING_MODEL=new
12
13# This is the actual bsp directory used during the build process.
14RTEMS_BSP_FAMILY=motorola_powerpc
15
16#  This section makes the target dependent options file.
17
18#  PPC_VECTOR_FILE_BASE (ppc)
19#     This defines the base address of the exception table.
20#     NOTE: Vectors are actually at 0xFFF00000 but file starts at offset 0x0100
21#
22#  PPC_USE_SPRG (RTEMS PowerPC port)
23#     If defined, then the PowerPC specific code in RTEMS will use some
24#     of the special purpose registers to slightly optimize interrupt
25#     response time.  The use of these registers can conflict with
26#     other tools like debuggers.
27#
28#  PPC_USE_DATA_CACHE (RTEMS PowerPC port)
29#     If defined, then the PowerPC specific code in RTEMS will use
30#     data cache instructions to optimize the context switch code.
31#     This code can conflict with debuggers or emulators.
32#
33
34define make-target-options
35        @echo "#define PPCN_60X_USE_DINK 0"                   >>$@
36        @echo "#define PPCN_60X_USE_NONE 1"                   >>$@
37        @echo "#define PPC_USE_DATA_CACHE 1"                   >>$@
38        @echo "#define PPC_VECTOR_FILE_BASE 0x0100"            >>$@
39        @echo "#define PPC_USE_SPRG  1"                        >>$@
40endef
41
42#  This contains the compiler options necessary to select the CPU model
43#  and (hopefully) optimize for it.
44#
45# NOTE : cheking egcc 1.1.1 source code shows that the last know processor
46# is the 604 model and that this is the default generation option.
47#
48CPU_CFLAGS = -mcpu=750
49
50# optimize flag: typically -0, could use -O4 or -fast
51# -O4 is ok for RTEMS
52# NOTE2: some level of -O may be actually required by inline assembler (at least
53# -O2 so far.
54# NOTE2 Apparently nobody really knows the status or r2 and r13.
55# As far as I know, small data are pointer impose a very specific compliation
56# model => not used.
57# Currently the sdata2 and sbss2 sections are empty => r2 is not used...
58CFLAGS_OPTIMIZE_V=-O4 -mmultiple -mstring -mstrict-align
59#CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions -fvolatile-global -fvolatile -mstrict-align -mcpu=750
60
61# debug flags: typically none, but at least -O1 is required due to this
62# BSP using inlined code
63CFLAGS_DEBUG_V = -O1 -mmultiple -mstring -mstrict-align
64
65# The following is a ld command file which works without using the
66# -specs system in gcc 2.8.  IT HAS NEVER BEEN TESTED WITH THIS BSP!!!
67#       $(LD) $(XLDFLAGS) -T $(LINKCMDS) \
68#         -o $@ -u atexit -u __vectors -u download_entry $(LINK_FILES)
69#       $(LD) $(XLDFLAGS) -Ttext 0x20000 \
70#         -o $@ -u atexit -u __vectors -u download_entry $(LINK_FILES)
71
72#       $(CC) -mmvme -mrtems -nostartfiles -mcpu=603 \
73#           -o $(basename $@).exe -L $(PROJECT_RELEASE)/lib \
74#            $(START_FILE) $(LINK_OBJS) \
75#            $(LD_LIBS) \
76#           -Wl,-\( -Wl,-lc -Wl,-lrtemsall -Wl,-lgcc -Wl,-\)
77define make-exe
78        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
79           -o $@ $(LINK_OBJS) $(LINK_LIBS)
80        $(NM) -g -n $@ > $(basename $@).num
81        $(SIZE) $@
82        test -d ${PROJECT_RELEASE}/bin || mkdir ${PROJECT_RELEASE}/bin
83        $(CP) $@ $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader/$(ARCH); \
84        ( cd $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader; \
85        $(MAKE) bootloader BINARY_LOADED=$@; )
86        f=`basename $@ .exe`; \
87        cp $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader/bootloader \
88            ${PROJECT_RELEASE}/bin/$${f}$(LIB_VARIANT).exe \
89        && chmod 755 \
90          ${PROJECT_RELEASE}/bin/$${f}$(LIB_VARIANT).exe
91endef
92
93# Miscellaneous additions go here
94
95# Let the HWAPI know which set of drivers to build
96DRIVER_ARCHITECTURE=compactpci
Note: See TracBrowser for help on using the repository browser.