summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/pc386/Makefile.am
diff options
context:
space:
mode:
authorJennifer Averett <Jennifer.Averett@OARcorp.com>2011-08-01 13:41:37 +0000
committerJennifer Averett <Jennifer.Averett@OARcorp.com>2011-08-01 13:41:37 +0000
commit8a7ed82647347482ae58323981bf3178f8d44f2f (patch)
tree230d9f0c89ed7be79ef30d2df76fbe2449833f8b /c/src/lib/libbsp/i386/pc386/Makefile.am
parent2011-08-01 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-8a7ed82647347482ae58323981bf3178f8d44f2f.tar.bz2
2011-08-01 Jennifer Averett <Jennifer.Averett@OARcorp.com>
PR 1802 * Makefile.am, configure.ac, preinstall.am, clock/ckinit.c, start/start16.S, startup/bspstart.c, startup/ldsegs.S: Add SMP support for i386.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/i386/pc386/Makefile.am25
1 files changed, 23 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/i386/pc386/Makefile.am b/c/src/lib/libbsp/i386/pc386/Makefile.am
index faddf6301a..1cc760e821 100644
--- a/c/src/lib/libbsp/i386/pc386/Makefile.am
+++ b/c/src/lib/libbsp/i386/pc386/Makefile.am
@@ -31,6 +31,11 @@ include_bsp_HEADERS = ../../i386/shared/irq/irq.h \
../../shared/include/irq-generic.h \
../../shared/include/irq-info.h
+if HAS_SMP
+include_bsp_HEADERS += ../../i386/shared/irq/apic.h
+include_bsp_HEADERS += ../../i386/shared/smp/smp-imps.h
+endif
+
include_HEADERS += include/crt.h
nodist_include_HEADERS += ../../shared/include/coverhd.h
@@ -109,8 +114,19 @@ libbsp_a_SOURCES += timer/timer.c timer/timerisr.S
libbsp_a_SOURCES += ide/idecfg.c ide/ide.c
if HAS_SMP
-libbsp_a_SOURCES += ../../shared/smp/getcpuid.c ../../shared/smp/smp_stub.c \
- ../../shared/smp/bspsmp_wait_for.c
+libbsp_a_SOURCES += ../../i386/shared/smp/getcpuid.c
+libbsp_a_SOURCES += ../../i386/shared/smp/smp-imps.c
+
+project_lib_DATA += appstart.$(OBJEXT)
+appcpustart.$(OBJEXT): start/start16.S
+ $(CPPASCOMPILE) $(AM_CPPFLAGS) -DSMP_SECONDARY_CORE -o $@ -c $<
+
+appstart.$(OBJEXT): appcpustart.$(OBJEXT)
+ $(LD) -N -T $(top_srcdir)/startup/linkcmds \
+ -Ttext 0x70000 -e app_processor_start -nostdlib \
+ -o appstart_tmp.exe $<
+ $(OBJCOPY) -O binary appstart_tmp.exe appstart.bin
+ $(OBJCOPY) -I binary -O elf32-i386 -B i386 appstart.bin $@
endif
if HAS_NETWORKING
@@ -144,6 +160,11 @@ endif
libbsp_a_LIBADD = ../../../libcpu/@RTEMS_CPU@/cache.rel \
../../../libcpu/@RTEMS_CPU@/page.rel \
../../../libcpu/@RTEMS_CPU@/score.rel
+
+if HAS_SMP
+libbsp_a_LIBADD += appstart.$(OBJEXT)
+endif
+
# We only build the Network library if HAS_NETWORKING was defined
# dec21140 is supported via libchip
if HAS_NETWORKING