summaryrefslogtreecommitdiffstats
path: root/rtems.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* rtems: Formatting update with yapfHEADmasterChris Johns2023-10-061-0/+3
|
* Avoid StopIteration exception for non-rtems .pcMartin Erik Werner2023-10-061-6/+8
| | | | | | | | | | | | | | | | | | | | | | _arch_from_arch_bsp() and _bsp_from_arch_bsp() has overly optimistic assumptions that the argument must contain a '-'-separated field which starts with "rtems". These functions are intended to find the target triplet or the bsp parts of strings like "sparc-gaisler-rtems5-leon3" and "arm-rtems6-xilinx_zynq_zc702" But _find_installed_arch_bsps() may call _arch_from_arch_bsp() with the name (without file extension) of any file which ends with ".pc", including for example "expat". This triggers a StopIteration exception when trying to find the next field after the "rtems" field, since no "rtems" field exists to start with. Rework these function to remove the preconditions, so that they return None if no "rtems" field exist or if no field exists before or after the "rtems" field. It could be argued. based on their name, that calling these functions with something that is not a triplet-bsp string is incorrect to start with, but attempting to address that is not done here.
* Allow vendor field in toolchain target tripletMartin Erik Werner2023-05-251-2/+6
| | | | | | | | | | | | | Rework the splitting of arch and bsp to rely on the last field in the arch section starting with "rtems", instead of relying on the arch being exactly two fields in size. This makes sure that toolchains with a vendor field in their target triplet can be used with this build system. Toolchains produced by the RTEMS source builder tend to omit the vendor field, but for example the SPARC LEON/ERC32 toolchain provided by Gaisler through the RCC package does include a vendor field.
* Parse includes in separate groups so isystem and sysroot paths and managedChris Johns2023-04-191-8/+7
| | | | - This fixes the support for the change in RTEMS to use -isystem
* Format with YAPFChris Johns2023-04-141-127/+222
|
* rtems: Fix IFLAGS and add arch_bsp_nameChris Johns2023-04-141-26/+41
| | | | | | | | | - Fix the IFLAGS env variable to be a list of includes without the compiler option - Add a utility call to return the arch/bsp as a name - Move the options into the configure section of waf
* rtems: Add support to get arch bsp list in confVijay Kumar Banerjee2021-02-231-0/+1
|
* rtems: Add function to test waf uninstallVijay Kumar Banerjee2020-07-271-0/+46
|
* rtems: Add uninstall option to the list of commandsVijay Kumar Banerjee2020-07-271-1/+1
|
* rtems: Allow checking multiple environment variableVijay Kumar Banerjee2020-03-181-4/+5
|
* Use gccdeps for dependency scanning.Chris Johns2019-10-101-3/+10
|
* rtems: Add a library check.Chris Johns2019-09-191-0/+8
|
* rtems.py: Fix typoVijay Kumar Banerjee2019-09-191-2/+2
|
* rtems: Add more checks, ranlib and strip.Chris Johns2019-06-301-3/+35
|
* Avoid default RTEMS application configurationSebastian Huber2018-10-221-23/+28
| | | | | | | | | Use a test body with a proper RTEMS application configuration to avoid a dependency on the default configuration. Do not include <rtems/score/cpuopts.h> directly since this header file is an implementation detail. Update #3551.
* rtems.py: Pass -EL, -EB, and -Gn to link phaseJoel Sherrill2018-10-141-1/+1
| | | | closes #3424.
* Change RTEMS path check from `bin` to `share/rtems<version>`.Chris Johns2018-08-121-8/+7
| | | | | | | There is no `bin` directory anymore with RTEMS 5 so the test fails. Check for the `share/rtems<version>` directory. Closes #3500.
* Fix --show-commands.Christian Mauderer2018-06-121-0/+2
| | | | | | In the current version of libbsd, if the --show-commands option is used, the cwd is passed as a Nod3. Popen does not work with that. Therefore create a string from cwd if it isn't already.
* Fix bsp_init hook.Christian Mauderer2018-04-091-1/+2
|
* Add bsp_init hook.Christian Mauderer2018-04-061-2/+7
|
* Use the returned cflags. Add a Python 3 print helper.Chris Johns2017-10-021-2/+4
|
* rtems: Do not add --std=gnu+=11 when RTEMS is built with SMP.Chris Johns2016-09-111-2/+0
|
* Process all files to be added to a tar file.Chris Johns2016-07-251-1/+1
|
* Fix the --show-commands option.Christian Mauderer2016-07-091-2/+2
| | | | | | If the --show-commands is set, the cmd-string is joined for printing. This breaks a later Popen call that expects an array instead of an fully assembled string. This patch fixes the problem.
* Use long commands on more platformsSebastian Huber2016-06-201-1/+2
|
* Remove tabs as white space.Chris Johns2016-06-161-1/+1
|
* Fix the root_filesystem tar command on Windows.Chris Johns2016-06-161-2/+7
|
* Add long command line support for gcc.Chris Johns2016-06-161-8/+61
|
* Add root_filesystem support to create a root file system.Chris Johns2016-06-151-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To use add to your wscript file: rtems.root_filesystem(bld, 'rootfs', ['etc/rc.conf'], 'rootfs.tar', 'rootfs-tar.o') to create a rootfs-tar.o which you add to your executable's list of sources. In your main or Init function add: #include <rtems/untar.h> extern int _binary_rootfs_tar_start; extern int _binary_rootfs_tar_size; static void expand_rootfs_tarfile(void) { rtems_status_code sc; rtems_printer printer; rtems_print_printer_printf(&printer); sc = Untar_FromMemory_Print((void *)(&_binary_rootfs_tar_start), (size_t)&_binary_rootfs_tar_size, &printer); if (sc != RTEMS_SUCCESSFUL) fprintf(stderr, "error: untar failed: %s\n", rtems_status_text(sc)); } Note, some arch's may not need the '_' at the start of the tar symbols.
* Pass through commands we do not expand.Chris Johns2016-05-111-0/+2
|
* Correctly expand the commands for each BSP to build.Chris Johns2016-05-071-7/+6
|
* Remove the 4.11 reference and use the version argument.Chris Johns2016-04-181-1/+1
|
* Add default RTEMS version support, environment var checking and CC version ↵Chris Johns2016-04-181-15/+50
| | | | | | | | | | | | | | message. Allow an application the ability to set a version number for RTEMS. This avoids issues with the automatic detection code. It means an application becomes keyed to a specific version of RTEMS. Check the environment for variables being set that could effect a build. We allow the environment to do this but it can have a side effect such as CC being set for one architecture and the rtems_waf being asked to use another. Print the version of CC being used. This is a diagnostic.
* Fix module import for msys2Sebastian Huber2015-11-141-1/+1
|
* Delete non-existing RTEMS_ATOMICSebastian Huber2015-11-131-5/+1
|
* Derive default RTEMS version and path from prefixSebastian Huber2015-11-131-19/+29
| | | | | | Now the configuration is quite simple for standard installations, e.g. waf configure --prefix=/opt/rtems-4.12 --rtems-bsps=sparc/sis
* Derive default paths from RTEMS versionSebastian Huber2015-11-131-48/+48
| | | | Close #2440.
* Do RTEMS CPU options check earlySebastian Huber2015-11-131-3/+7
| | | | | | Set mandatory C++ standard option in case SMP is enabled. Close #2418.
* Fix the rtems-tld wrapper option.Chris Johns2014-09-221-1/+3
|
* Clean up the rtems-tld support.Chris Johns2014-09-211-3/+5
|
* Provide support for trac linking.Chris Johns2014-09-211-7/+27
|
* Let the user provide a handler that is called when configuring.Chris Johns2014-06-231-1/+8
| | | | | The handler is called with the BSP environment set up so the user can perform various checks.
* Create new repo from existing files.Chris Johns2013-12-121-0/+714