source: rtems/c/src/lib/libbsp/powerpc/motorola_powerpc/bootloader/Makefile.am @ 58507208

4.104.114.84.95
Last change on this file since 58507208 was 58507208, checked in by Joel Sherrill <joel.sherrill@…>, on 05/14/02 at 17:10:50

2001-05-14 Till Straumann <strauman@…>

  • bootloader/Makefile.am, console/Makefile.am, pci/Makefile.am: Per PR216, "libbsp/powerpc/shared" BSP has been modified considerably with the goal to make it more flexible and reusable by other BSPs. The main strategies were:
    • eliminate hardcoded base addresses; devices use offsets and a BSP defined base address.
    • separate functionality into different files (e.g. reboot from inch.c to reboot.c) which can be overridden by a 'derived' BSP.
    • separate initialization code into separate files (e.g. PCI bridge detection/initialization was separated from the more generic PCI access routines), also to make it easier for 'derived' BSPs to substitute their own initialization code.

There are also a couple of enhancements and fixes:

  • IRQ handling code now has a hook for attaching a VME bridge.
  • OpenPIC is now explicitely initialized (polarities, senses). Eliminated the implicit assumption on the presence of an ISA PIC.
  • UART and console driver now supports more than 1 port. The current maximum of 2 can easily be extended by enlarging a table (it would even be easier if the ISR API was not broken by design).
  • fixed polled_io.c so it correctly supports console on COM2
  • fixed TLB invalidation code (start.S).
  • exception handler prints a stack backtrace.
  • added BSP_pciFindDevice() to scan the pci bus for a particular vendor/device/instance.
  • Property mode set to 100644
File size: 2.0 KB
Line 
1##
2## $Id$
3##
4
5## NOTE: This Makefile.am applies automake compilation rules and does not
6## apply RTEMS's compilation rules.
7
8AUTOMAKE_OPTIONS = no-exeext
9
10VPATH = @srcdir@:@srcdir@/../../shared/bootloader:@srcdir@/../../shared/console
11
12noinst_PROGRAMS = bootloader.o
13
14## IMPORTANT: head.S must be first, T. Straumann 12/17/2001
15bootloader_o_SOURCES = head.S exception.S em86real.S
16bootloader_o_SOURCES += misc.c pci.c zlib.c mm.c em86.c polled_io.c lib.c
17bootloader_o_SOURCES += bootldr.h zlib.h pci.h keyboard.h
18
19include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
20
21NM = @NM@
22LD = @LD@
23
24# ----
25DEFAULT_INCLUDES =
26
27AM_CPPFLAGS = -D__BOOT__ -DDEBUG
28AM_CFLAGS = \
29    $(GCC_SPECS) -specs bsp_specs -qrtems -mrelocatable \
30    -msoft-float -mstrict-align -fno-builtin -Wall -mmultiple \
31    -mstring -O2 -fomit-frame-pointer -ffixed-r13 -mno-sdata \
32    $(CPU_CFLAGS)
33AM_CCASFLAGS = $(INCLUDES) $(AM_CPPFLAGS) \
34    $(GCC_SPECS) -specs bsp_specs -qrtems -mrelocatable \
35    -DASM $(CPU_CFLAGS)
36
37#
38# CAUTION :
39#
40# As we use very specific compilation options in this directory
41# we shall not use any other code. This includes the newlib libc.a
42# as well as other code located in .o files in mcp750 directory.
43#
44# NEVER remove lib.c. You have been warned...
45#
46bootloader.o: $(bootloader_o_OBJECTS)
47        $(LD) -r -o $@ $(bootloader_o_OBJECTS)
48        $(NM)  $@ | grep ' U '
49        @echo "Every symbol listed should be defined in @srcdir@/ppcboot.lds"
50
51# FIXME: We might want to apply this in future.
52# ppcbootdir = $(exec_prefix)/@RTEMS_BSP@/lib
53# ppcboot_DATA = bootloader.o
54# ppcboot_DATA += ../../shared/bootloader/ppcboot.lds
55
56# FIXME: Tmp-install stuff to make mcp750.cfg's make-exe happy.
57# As mcp750.cfg's make-exe doesn't work outside of the source-tree.
58# We might consider to use this directory directly for in-source-tree
59# building, instead.
60$(PROJECT_RELEASE)/lib/%: %
61        $(INSTALL_DATA) $< $@
62
63TMPINSTALL_FILES = $(PROJECT_RELEASE)/lib/bootloader.o \
64    $(PROJECT_RELEASE)/lib/ppcboot.lds
65
66all-local: $(TMPINSTALL_FILES)
67
68include $(top_srcdir)/../../../../../../automake/local.am
Note: See TracBrowser for help on using the repository browser.