build: Fix i386/pc386 with SMP enabled

Update #3818.
This commit is contained in:
Sebastian Huber
2020-09-15 09:16:13 +02:00
parent 2786b0aa38
commit 127c3ea527
4 changed files with 68 additions and 1 deletions

View File

@@ -19,6 +19,8 @@ links:
uid: objnet
- role: build-dependency
uid: objsmp
- role: build-dependency
uid: objsmpstart
- role: build-dependency
uid: objvga
- role: build-dependency

View File

@@ -11,6 +11,6 @@ includes: []
install: []
links: []
source:
- bsps/i386/pc386/start/getcpuid.c
- bsps/i386/pc386/start/bspsmp.c
- bsps/i386/pc386/start/smp-imps.c
type: build

View File

@@ -0,0 +1,49 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
asflags: []
build-type: script
cflags: []
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
cppflags: []
do-build: |
startAP = "bsps/i386/pc386/start/startAP"
startAP_o = startAP + ".o"
self.asm(bld, bic, startAP + ".S", startAP_o)
startAP_exe = startAP + ".exe"
ldflags = "-N -Ttext 0x70000 -e app_processor_start -nostdlib"
bld(
rule="${LD} " + ldflags + " -o ${TGT} -r ${SRC}",
source=startAP_o,
target=startAP_exe,
)
appstart_bin = "appstart.bin"
bld(
rule="${OBJCOPY} -O binary ${SRC} ${TGT}",
source=startAP_exe,
target=appstart_bin,
)
appstart_o = "appstart.o"
bld(
rule="${OBJCOPY} -I binary -O elf32-i386 -B i386 ${SRC} ${TGT}",
source=appstart_bin,
target=appstart_o,
)
bld.objects(
source=appstart_o,
target=self.uid,
)
bic.objects.append(self.uid)
do-configure: null
enabled-by:
- RTEMS_SMP
includes: []
ldflags: []
links:
- role: build-dependency
uid: ../../optobjcopy
prepare-build: null
prepare-configure: null
stlib: []
type: build
use-after: []
use-before: []

View File

@@ -0,0 +1,16 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
actions:
- set-value: ${ARCH}-rtems${__RTEMS_MAJOR__}-objcopy
- substitute: null
- find-program: null
- env-assign: OBJCOPY
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: null
default-by-variant: []
description: ''
enabled-by: true
links: []
name: OBJCOPY
type: build