diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-08-02 07:36:45 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-08-03 09:23:10 +0200 |
commit | 0d76cc9f0449f7d57ecb93a2cd2a118b89df93e9 (patch) | |
tree | 0788c9b2f8ce12fb8e8ab608413d839f4c3c73b4 /spec | |
parent | bsps/shared: Fix Coverity warning in MCP7940M (diff) | |
download | rtems-0d76cc9f0449f7d57ecb93a2cd2a118b89df93e9.tar.bz2 |
build: Add PROGRAM_PREFIX option
Replace --rtems-version with a PROGRAM_PREFIX option. This allows also
the use of vendor tools.
Diffstat (limited to 'spec')
-rw-r--r-- | spec/build/bsps/makeinc.yml | 16 | ||||
-rw-r--r-- | spec/build/bsps/maketarget.yml | 22 | ||||
-rw-r--r-- | spec/build/bsps/optobjcopy.yml | 2 | ||||
-rw-r--r-- | spec/build/cpukit/cpuopts.yml | 2 | ||||
-rw-r--r-- | spec/build/cpukit/optgcc.yml | 8 | ||||
-rw-r--r-- | spec/build/cpukit/optprogramprefix.yml | 18 | ||||
-rw-r--r-- | spec/build/testsuites/ada/optgnat.yml | 2 |
7 files changed, 45 insertions, 25 deletions
diff --git a/spec/build/bsps/makeinc.yml b/spec/build/bsps/makeinc.yml index ac395f2f02..08fc75a8b9 100644 --- a/spec/build/bsps/makeinc.yml +++ b/spec/build/bsps/makeinc.yml @@ -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) diff --git a/spec/build/bsps/maketarget.yml b/spec/build/bsps/maketarget.yml index 798b64fa22..7a7b0c3d35 100644 --- a/spec/build/bsps/maketarget.yml +++ b/spec/build/bsps/maketarget.yml @@ -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 - - CXX = ${ARCH}-rtems${__RTEMS_MAJOR__}-g++ + 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 = ${PROGRAM_PREFIX}g++ export CC export AS diff --git a/spec/build/bsps/optobjcopy.yml b/spec/build/bsps/optobjcopy.yml index 3387e23794..63fab08ac6 100644 --- a/spec/build/bsps/optobjcopy.yml +++ b/spec/build/bsps/optobjcopy.yml @@ -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 diff --git a/spec/build/cpukit/cpuopts.yml b/spec/build/cpukit/cpuopts.yml index f1b30eec55..1d28ace552 100644 --- a/spec/build/cpukit/cpuopts.yml +++ b/spec/build/cpukit/cpuopts.yml @@ -8,6 +8,8 @@ include-headers: [] install-path: ${BSP_INCLUDEDIR}/rtems/score links: - role: build-dependency + uid: optprogramprefix +- role: build-dependency uid: optgcc - role: build-dependency uid: optarchbits diff --git a/spec/build/cpukit/optgcc.yml b/spec/build/cpukit/optgcc.yml index 3afb909444..94af494af4 100644 --- a/spec/build/cpukit/optgcc.yml +++ b/spec/build/cpukit/optgcc.yml @@ -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 diff --git a/spec/build/cpukit/optprogramprefix.yml b/spec/build/cpukit/optprogramprefix.yml new file mode 100644 index 0000000000..73deef79d1 --- /dev/null +++ b/spec/build/cpukit/optprogramprefix.yml @@ -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 diff --git a/spec/build/testsuites/ada/optgnat.yml b/spec/build/testsuites/ada/optgnat.yml index 6d84f64845..449859bde0 100644 --- a/spec/build/testsuites/ada/optgnat.yml +++ b/spec/build/testsuites/ada/optgnat.yml @@ -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 |