build: Use enabled by for defaults

Merge the "default" and "default-by-variant" attributes.  Use an
"enabled-by" expression to select the default value based on the enabled
set.  This makes it possible to select default values depending on other
options.  For example you could choose memory settings based on whether
RTEMS_SMP is enabled or disabled.

The change was tested by comparing the output of

  ./waf bspdefaults

before and after the change.
This commit is contained in:
Sebastian Huber
2022-09-12 10:35:21 +02:00
parent d2664faa39
commit f20078acea
819 changed files with 3003 additions and 2780 deletions

View File

@@ -7,8 +7,9 @@ build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default:
- -mcpu=cypress
default-by-variant: []
- enabled-by: true
value:
- -mcpu=cypress
description: |
ABI flags
enabled-by: true

View File

@@ -5,8 +5,9 @@ actions:
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: 0
default-by-variant: []
default:
- enabled-by: true
value: 0
description: |
The erc32 console driver can operate in either polled or interrupt mode. Under the simulator (especially when FAST_UART is defined), polled seems to operate better. It is common for a task to print a line (like the end of test message) and then exit. In this case, the program returns control to the simulator command line before the program has even queued the output to the uart. Thus sis has no chance of getting the data out.
enabled-by: true

View File

@@ -5,8 +5,9 @@ actions:
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: false
default-by-variant: []
default:
- enabled-by: true
value: false
description: |
If defined, CPU is spinning on fatal exit. Otherwise generate system error which will hand over to debugger, simulator, etc.
enabled-by: true

View File

@@ -7,13 +7,13 @@ build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default:
- -mcpu=leon
default-by-variant:
- value:
- enabled-by: sparc/at697f
value:
- -mcpu=leon
- -mfix-at697f
variants:
- sparc/at697f
- enabled-by: true
value:
- -mcpu=leon
description: |
ABI flags
enabled-by: true

View File

@@ -5,8 +5,9 @@ actions:
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: 0
default-by-variant: []
default:
- enabled-by: true
value: 0
description: |
The leon2 console driver can operate in either polled or interrupt mode. Under the simulator (especially when FAST_UART is defined), polled seems to operate better. It is common for a task to print a line (like the end of test message) and then exit. In this case, the program returns control to the simulator command line before the program has even queued the output to the uart. Thus sis has no chance of getting the data out.
enabled-by: true

View File

@@ -5,8 +5,9 @@ actions:
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: false
default-by-variant: []
default:
- enabled-by: true
value: false
description: |
If defined, CPU is spinning on fatal exit. Otherwise generate system error which will hand over to debugger, simulator, etc.
enabled-by: true

View File

@@ -7,23 +7,21 @@ build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default:
- -mcpu=leon3
default-by-variant:
- value:
- enabled-by: sparc/ut700
value:
- -mcpu=leon3
- -mfix-ut700
variants:
- sparc/ut700
- value:
- enabled-by: sparc/ut699
value:
- -mcpu=leon
- -mfix-ut699
variants:
- sparc/ut699
- value:
- enabled-by: sparc/gr712rc
value:
- -mcpu=leon3
- -mfix-gr712rc
variants:
- sparc/gr712rc
- enabled-by: true
value:
- -mcpu=leon3
description: |
ABI flags
enabled-by:

View File

@@ -7,26 +7,23 @@ build-type: option
copyrights:
- Copyright (C) 2020 Hesham Almatary <Hesham.Almatary@cl.cam.ac.uk>
default:
- -mcpu=leon3
default-by-variant:
- value:
- enabled-by: sparc/ut700
value:
- -mcpu=leon3
- -mfix-ut700
variants:
- sparc/ut700
- value:
- enabled-by: sparc/ut699
value:
- -mcpu=leon
- -mfix-ut699
variants:
- sparc/ut699
- value:
- enabled-by: sparc/gr712rc
value:
- -mcpu=gr712rc
variants:
- sparc/gr712rc
- value:
- enabled-by: sparc/gr740
value:
- -mcpu=gr740
variants:
- sparc/gr740
- enabled-by: true
value:
- -mcpu=leon3
description: |
ABI flags
enabled-by:

View File

@@ -5,8 +5,9 @@ actions:
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: 0
default-by-variant: []
default:
- enabled-by: true
value: 0
description: |
The leon3 console driver can operate in either polled or interrupt mode. Under the simulator (especially when FAST_UART is defined), polled seems to operate better.
enabled-by: true

View File

@@ -5,8 +5,9 @@ actions:
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: true
default-by-variant: []
default:
- enabled-by: true
value: true
description: |
Always defined when on a LEON3 to enable the LEON3 support for determining the CPU core number in an SMP configuration.
enabled-by: true

View File

@@ -5,8 +5,9 @@ actions:
build-type: option
copyrights:
- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
default: false
default-by-variant: []
default:
- enabled-by: true
value: false
description: |
If defined, CPU is powered down on fatal exit. Otherwise generate system error which will hand over to debugger, simulator, etc.
enabled-by: true