build: Add PROGRAM_PREFIX option

Replace --rtems-version with a PROGRAM_PREFIX option.  This allows also
the use of vendor tools.
This commit is contained in:
Sebastian Huber
2023-08-02 07:36:45 +02:00
parent 5115e6524f
commit 0d76cc9f04
8 changed files with 46 additions and 46 deletions

View File

@@ -16,14 +16,14 @@ content: |
prefix = ${PREFIX}
exec_prefix = $${prefix}/${ARCH}-rtems${__RTEMS_MAJOR__}
CC_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-gcc
CXX_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-g++
AS_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-as
AR_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-ar
NM_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-nm
LD_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-ld
SIZE_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-size
OBJCOPY_FOR_TARGET = ${ARCH}-rtems${__RTEMS_MAJOR__}-objcopy
CC_FOR_TARGET = ${PROGRAM_PREFIX}gcc
CXX_FOR_TARGET = ${PROGRAM_PREFIX}g++
AS_FOR_TARGET = ${PROGRAM_PREFIX}as
AR_FOR_TARGET = ${PROGRAM_PREFIX}ar
NM_FOR_TARGET = ${PROGRAM_PREFIX}nm
LD_FOR_TARGET = ${PROGRAM_PREFIX}ld
SIZE_FOR_TARGET = ${PROGRAM_PREFIX}size
OBJCOPY_FOR_TARGET = ${PROGRAM_PREFIX}objcopy
CC= $$(CC_FOR_TARGET)
CXX= $$(CXX_FOR_TARGET)

View File

@@ -11,17 +11,17 @@ content: |
LIBS =
RTEMS_API = ${__RTEMS_MAJOR__}
CC = ${ARCH}-rtems${__RTEMS_MAJOR__}-gcc --pipe
AS = ${ARCH}-rtems${__RTEMS_MAJOR__}-as
AR = ${ARCH}-rtems${__RTEMS_MAJOR__}-ar
NM = ${ARCH}-rtems${__RTEMS_MAJOR__}-nm
LD = ${ARCH}-rtems${__RTEMS_MAJOR__}-ld
SIZE = ${ARCH}-rtems${__RTEMS_MAJOR__}-size
STRIP = ${ARCH}-rtems${__RTEMS_MAJOR__}-strip
OBJCOPY = ${ARCH}-rtems${__RTEMS_MAJOR__}-objcopy
RANLIB = ${ARCH}-rtems${__RTEMS_MAJOR__}-ranlib
CC = ${PROGRAM_PREFIX}gcc --pipe
AS = ${PROGRAM_PREFIX}as
AR = ${PROGRAM_PREFIX}ar
NM = ${PROGRAM_PREFIX}nm
LD = ${PROGRAM_PREFIX}ld
SIZE = ${PROGRAM_PREFIX}size
STRIP = ${PROGRAM_PREFIX}strip
OBJCOPY = ${PROGRAM_PREFIX}objcopy
RANLIB = ${PROGRAM_PREFIX}ranlib
CXX = ${ARCH}-rtems${__RTEMS_MAJOR__}-g++
CXX = ${PROGRAM_PREFIX}g++
export CC
export AS

View File

@@ -1,6 +1,6 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
actions:
- set-value: ${ARCH}-rtems${__RTEMS_MAJOR__}-objcopy
- set-value: ${PROGRAM_PREFIX}objcopy
- substitute: null
- find-program: null
- env-assign: OBJCOPY

View File

@@ -7,6 +7,8 @@ guard: _RTEMS_SCORE_CPUOPTS_H
include-headers: []
install-path: ${BSP_INCLUDEDIR}/rtems/score
links:
- role: build-dependency
uid: optprogramprefix
- role: build-dependency
uid: optgcc
- role: build-dependency

View File

@@ -1,21 +1,21 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
actions:
- set-value: ${ARCH}-rtems${__RTEMS_MAJOR__}-gcc
- set-value: ${PROGRAM_PREFIX}gcc
- substitute: null
- find-program: null
- env-assign: AS
- env-assign: CC
- env-assign: LINK_CC
- set-value: ${ARCH}-rtems${__RTEMS_MAJOR__}-g++
- set-value: ${PROGRAM_PREFIX}g++
- substitute: null
- find-program: null
- env-assign: CXX
- env-assign: LINK_CXX
- set-value: ${ARCH}-rtems${__RTEMS_MAJOR__}-ar
- set-value: ${PROGRAM_PREFIX}ar
- substitute: null
- find-program: null
- env-assign: AR
- set-value: ${ARCH}-rtems${__RTEMS_MAJOR__}-ld
- set-value: ${PROGRAM_PREFIX}ld
- substitute: null
- find-program: null
- env-assign: LD

View File

@@ -0,0 +1,18 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
actions:
- get-string: null
- substitute: null
- env-assign: null
build-type: option
copyrights:
- Copyright (C) 2023 embedded brains GmbH & Co. KG
default:
- enabled-by: true
value: ${ARCH}-rtems${__RTEMS_MAJOR__}-
description: |
Defines the program prefix of tools (compiler, assembler, linker).
enabled-by: true
format: '{}'
links: []
name: PROGRAM_PREFIX
type: build

View File

@@ -1,6 +1,6 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
actions:
- set-value: ${ARCH}-rtems${__RTEMS_MAJOR__}-gnatmake
- set-value: ${PROGRAM_PREFIX}gnatmake
- substitute: null
- find-program: null
- env-assign: GNATMAKE