summaryrefslogtreecommitdiffstats
path: root/wscript (follow)
Commit message (Collapse)AuthorAgeFilesLines
* build: Allow separate optimization flagsSebastian Huber2022-07-041-1/+1
| | | | | | | | Allow separate optimization flags for the BSP, cpukit, and tests. For example, the BSP and cpukit may be built without optimization if coverage instrumentation is enabled, however, the tests may still use optimization. Update #4670.
* build: Add cppflags, cflags, cxxflags to groupsSebastian Huber2022-07-041-3/+3
| | | | | | | Propagate the group defined cppflags, cflags, and cxxflags from parent groups to child items through the build item context. Update #4670.
* build: Improve value substitutionSebastian Huber2022-07-041-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | The waf build system uses lists for tool flags. The build items may use variable substitution. Add the ability to use the variable substitution in lists. For example: MORE_FLAGS = ['-more', '-flags'] flags: - -some-flag - ${MORE_FLAGS} Before this change, the ${MORE_FLAGS} was substituted to "-more -flags". This would be passed by waf as a single command line argument to the tool. After this change, the ${MORE_FLAGS} list extends the flags list: flags = ['-some-flag', '-more', '-flags'] This list extension is performed if a list element consists of exactly one variable. Update #4670.
* build: Fix identifier patternSebastian Huber2022-07-041-1/+1
| | | | | | Allow upper case characters in identifiers. Update #4670.
* build: Move BSP_INCLUDES splitSebastian Huber2022-07-041-1/+1
| | | | The goal is to let the build items define as much as possible.
* build: Add more flags to BuildItemContextSebastian Huber2022-07-041-23/+70
| | | | | | | Add cppflags, cflags, and cxxflags to BuildItemContext. This allows to propagate the flags from parent items to child items. Update #4670.
* build: Assert value properties only if not NoneSebastian Huber2022-06-081-9/+9
|
* wscript: Allow start code to be written in CKinsey Moore2022-04-261-1/+5
| | | | | | | Start code for most platforms requires hand-coded ASM but some can be bootstrapped entirely in C, especially for paravirtualized platforms. This change allows start code to be written in C where possible instead of requiring architecture-specific ASM to bridge to C.
* wscript: Allow substitution outside valuesKinsey Moore2022-04-141-26/+28
| | | | | | | | This expands the ability to substitute variables outside the current limitation of values in options to asflags, cflags, cppflags, cxxflags, ldflags, and includes. It is possible for all of these flags to utilize user-defined information in config.ini, especially for paths to external resources.
* build: Apply command line options to all variantsSebastian Huber2022-03-181-5/+3
| | | | Update #4548.
* build: Add --rtems-version command line optionSebastian Huber2021-11-171-2/+23
| | | | Update #4548.
* build: Support command line specified optionsSebastian Huber2021-11-161-2/+38
| | | | Update #4548.
* build: Merge default-by-family into by-variantSebastian Huber2021-08-181-4/+6
| | | | | | | Prefix the BSP family name with "bsps/" to make it distinct to the BSP variant names. Update #4468.
* build: Bring Item.link() in line with waf linkSebastian Huber2021-07-261-1/+1
| | | | | The LDFLAGS are placed after the static libraries in the standard waf link command, see "waflib/Tools/c.py" in the waf sources.
* build: Add "bsps/" prefix to BSP family enableSebastian Huber2021-07-221-1/+1
| | | | | BSP family and BSP variant names may be equal. This prefix avoids ambiguity in the enabled-by expressions.
* build: Use objects of build context for programsSebastian Huber2021-07-151-1/+1
|
* build: Add the BSP family to the enable setSebastian Huber2021-07-151-1/+6
| | | | | This makes it possible to use the BSP family in expressions of the enabled-by attribute.
* build: Fix formatSebastian Huber2021-07-151-1/+1
|
* build: Prefer variant default value over familySebastian Huber2021-07-151-4/+4
| | | | Update #4468.
* build: Fix bsp_defaults commandSebastian Huber2021-07-151-6/+8
| | | | Update #4468.
* build: Use BSP family for optionsChris Johns2021-07-151-13/+21
| | | | | | | - Optionally add support for 'default-by-family' to allow option to be set by a family and so all related BSPs Close #4468
* build: Fix format in wscriptSebastian Huber2021-02-231-1/+3
|
* build: Add CPPFLAGS to assembler command lineSebastian Huber2021-01-261-0/+1
| | | | | We use GCC to call the assembler. This means the assembler files are processed by the C preprocessor.
* build: Add ABI flags to gnatmake compiler flagsSebastian Huber2020-12-161-0/+2
|
* wscript: Apply test state expectations correctlyKinsey Moore2020-11-241-1/+1
| | | | | | | | The variety of expected test states are not currently applied to tests with names containing '-' correctly due to a failure to replace '-' with '_' before adding the CPPFLAGS to the environment for that test. This ensures that all additions of CPPFLAGS have that replacement performed so that the CPPFLAGS are applied properly during compilation.
* build: Fix cache file placementSebastian Huber2020-11-121-3/+5
| | | | | | The "bsp_list" and "bsp_defaults" commands get a waflib.Context object which has no build node. Use a hard coded build path for these commands.
* build: Place cache file in output directorySebastian Huber2020-11-051-2/+2
| | | | | | | | This improves support for the --out option. Previously, the cache file was placed in the source directory under "build/...". Now, it is placed in the output directory, which is "build" by default. So, if you don't use the --out option nothing changes. However, if you use the --out option, then the cache file is placed under the specified directory.
* build: Improve cache handlingSebastian Huber2020-10-281-1/+4
| | | | Check the directory modification time to notice file removals.
* build: Report caching errorsSebastian Huber2020-10-281-1/+1
| | | | | The ctx.fatal() method uses an exception to stop the build. Do not catch it.
* build: Use exact match by default for BSP namesSebastian Huber2020-10-021-2/+2
| | | | Update #3818.
* build: Add commentSebastian Huber2020-09-281-0/+4
| | | | Update #3818.
* build: Fix option default valuesSebastian Huber2020-09-271-3/+4
| | | | | | | For the option default values we have to use the BSP name defined by the build specification and not the user. Update #3818.
* build: Fix enabled-by evaluationSebastian Huber2020-09-271-1/+2
| | | | | | | For the enabled-by evaluation we have to use the BSP name defined by the build specification and not the user. Update #3818.
* build: Simplify get_compiler()Sebastian Huber2020-09-271-2/+2
| | | | Update #3818.
* build: Allow test program item UIDs with a "-"Sebastian Huber2020-09-171-2/+4
| | | | Update #3818.
* build: Fix dependencies for start and asm filesSebastian Huber2020-09-171-7/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a feature to enforce an explicit target file for assembler sources. Add a build start file node list and use it as a test program dependency. The fix for #3846 and #4080 needs to be combined, because the fix for #3846 requires the removal of 'before=["cstlib"]'. This patch fixes two issues: 1. The tracking of start file dependencies. 2. Reflect that executables depend on the start files. We need a start.o file in the right path so that the linker can find is as specified by the linker script, and not for example a start.S.17.o file in some path. This part is addressed by the "explicit_asm_target" feature. This build process extension @after("apply_link") @feature("cprogram", "cxxprogram") def process_start_files(self): if getattr(self, "start_files", False): self.link_task.dep_nodes.extend(self.bld.start_files) addresses 2. Close #3846. Close #4080.
* build: Use Python tarfile instead of paxSebastian Huber2020-09-141-13/+14
| | | | This patch is for the new build system.
* build: Alternative build system based on wafSebastian Huber2020-09-141-0/+1531
Update #3818.