469 Commits

Author SHA1 Message Date
Chris Johns
5e4b3b9098 sb: Set the uid and gid on POSIX systems
This improves performance because it avoids an exec each time
the _uid macro is referenced and that can be a number of times
for each config parsed.
2023-12-07 10:31:59 +11:00
Chris Johns
39ca2970a5 sb: Allow _ in downloaded file names 2023-12-07 10:31:58 +11:00
Chris Johns
547335431b sb: No hash on a package is an error 2023-11-30 07:46:48 +11:00
Chris Johns
63396e2ed6 sb: Fix Python 3.12 safeConfigParser and invalid escape sequences
Updates #4968
2023-11-22 08:14:55 +11:00
Michael South
b680d19231 sb/linux.py: More reliably recognize distribution
If available, use "distro" package (introduced Python 3.6, back-ported to 2.6)
to recognize Linux distributions and versions.

Updates #4966
2023-11-17 10:12:26 +11:00
Chris Johns
c85c46e3bb sb/option: Add the arch to the macros from the --rtems-bsp option 2023-05-16 13:19:42 +10:00
Chris Johns
9c1e5c7e01 sb: Fix the library handling in rtems-build-dep 2023-05-16 13:19:42 +10:00
Chris Johns
574839d855 sb/path: Handle unicode filenames in a source path
The change leaves the encoding in that currently exists because
I cannot remember why it is there. If an encoding error happens
return the same path to see if it will work.
2023-05-16 13:19:42 +10:00
Chris Johns
e5abdec853 6/gdb: fix building on FreeBSD 13.1
See https://sourceware.org/bugzilla/show_bug.cgi?id=30214

Closes #4872
2023-03-09 15:45:18 +11:00
Frank Kühndel
b3b53c5242 RSB: Mitigate too short error reports
Close #4642
2023-01-23 11:59:49 +01:00
Chris Johns
953b8391c0 sb/set-bulder: Fix installing builds when a single buildset
- Always stage a build

- Install if installable and outter most buildset instance

Closes #4730
2022-10-01 06:32:24 +10:00
Chris Johns
e04c84191b sb/execute: Fix incremental decoder with --dry-run
Closes #4726
2022-10-01 06:31:46 +10:00
Chris Johns
cfed1659a2 sb/version: Set top from external package 2022-09-30 07:06:27 +10:00
Chris Johns
d7fb57fa9f sb/execute: Use a decoder that maintains state aross blocks
Update #4726
2022-09-30 07:05:53 +10:00
Chris Johns
336f15cc75 sb/set-builder: Fix staging and tar file generation with a single config build
Closes #4730
2022-09-29 18:55:15 +10:00
Chris Johns
f86bc1da52 sb/setbuilder: Install the build when stagging or configured to install 2022-09-16 16:55:41 +10:00
Chris Johns
6f7eba4f1a sb/setbuilder: Do not install if --no-install option is used
- This is a bug introduced in the recent bset tar file changes
2022-09-14 16:39:46 +10:00
Chris Johns
6205068c5a sb/setbuilder: Correctly create build set tar files
- Make a single tarfile for all buildsets built

- Use the staging tree as the tarfile source

- Use python's tarfile module

- Create a config.file object without loading a .cfg file
2022-09-09 09:08:09 +10:00
Chris Johns
1ce36943e9 sb/build.py: Output build scripts to trace
- Only remove the build directory when not a dry run
2022-09-09 09:08:09 +10:00
Chris Johns
18b4507fc5 sb/config: Correctly handle multiple config paths
- Add rtems/config to the config directories searched to better
  support deployment

- Correctly expand the configdir and path searchs

Close #4710
2022-09-09 09:08:09 +10:00
Chris Johns
3a4892dce1 sb/setbuilder: Support line continuation 2022-09-09 09:08:09 +10:00
Chris Johns
17106e0e3c sb/rtems-kernel-config-check: Support multiple BSPs and add a test option 2022-09-09 09:08:09 +10:00
Chris Johns
be25beed29 sb/rtems-kernel-config-check: Reformat using yapf 2022-09-09 09:08:09 +10:00
Chris Johns
cbcf8698a8 sb/get-sources: Fix getting sources with archs
- Add a stop on error option

- Add listing root or toplevel buildset files

- Add used and unused file output to track what is not used
  for clean ups

- Update to handle macro expanded includes in buildset files
2022-08-17 14:52:12 +10:00
Joel Sherrill
e73a258a3a source-builder/sb/options.py: Change arc to arch in help 2022-05-22 18:28:08 -05:00
Kinsey Moore
620b62436a source-builder: Handle utf8 in path
It's possible for an environment to have unicode characters in its
paths. This was recently exposed by the latest newlib update and RSB
fails under Python 2.7 in this situation. This resolves the issue by
ensuring that the paths are encoded and decoded as necessary.

Related issue that caused the change in newlib:
https://github.com/golang/go/issues/27836
2022-05-16 17:35:23 -05:00
Chris Johns
7d80719f74 sb/setbuilder: Control buildsets using the --with-* command line option
- Expand macros in buildset file names

- Add support to buildsets for `%defineifnot`

- Update 6 and 7 to support command line build overrides

Closes #4646
2022-05-05 12:32:16 +10:00
Chris Johns
4c3708f127 sb: %if checks are numeric if the left and right values are numbers
- If the left and right values are numbers make the check numeric.

Update #4631
2022-04-26 10:12:58 +10:00
Sebastian Huber
09b84c4c2a sb/linux.py: Simplify "distro" determination
This fixes an issue on Debian 11 which contains "Debian" in /etc/issue
(capital D).
2022-01-24 07:56:16 +01:00
Ryan Long
def934785d rtems-kernel: Implement kernel recipe using waf
Closes #4145
2021-11-09 11:10:40 -06:00
Robin Mueller
c938bd7cbe setbuilder minor list-host option
This adds a way to print the host triplet
Can be useful for cross-compiling toolchains
2021-07-17 08:42:29 +10:00
Alex White
4e6dc64314 sb: Merge mailer changes from rtems-tools
This adds the improved mailer.py script from rtems-tools.

Closes #4388
2021-05-26 16:34:36 -05:00
Ricardo Cárdenes
5e449fb5c2 sb/config.py: Fix operator reconstruction
Close #4335
2021-03-11 08:52:27 -07:00
Vijay Kumar Banerjee
2f9a68bfb1 sb/config.py: Fix relational operator
Close #4319
2021-03-10 11:09:17 -07:00
Stephen Clark
ed5030bc24 pkgconfig.py: Removed use of "unicode" keyword for python3 compatibility
Closes #4094.
2020-09-26 11:01:04 +10:00
Chris Johns
c51f634258 sb: Fix the imports on Python2
Updates #4037
2020-08-28 11:37:53 +10:00
Chris Johns
650c6f9933 sb: Use shebang env python
Closes #4037
2020-08-25 21:21:50 +10:00
Chris Johns
dc989037e4 sb/track: Only output unreferenced configs with the option 2020-08-12 13:17:48 +10:00
Chris Johns
a863b15fdb sb/bootstrap: Remove the sb-bootstrap command
Closes #4046
2020-08-10 16:53:42 +10:00
Chris Johns
481bbd1109 sb/builder: Remove sb-builder command
Closes #4045
2020-08-10 16:21:35 +10:00
Chris Johns
12418190b9 sb/track: Add a command to track build sets.
- Process a build set for a range of hosts and output a dependency
  tree, the used build set and configuration files.
- Output the configuration files that are no referenced

Closes #4036
2020-08-10 16:19:47 +10:00
Chris Johns
8effa3e542 sb/options: A Canadian Cross is a different host, build and target
The check must make sure each is different.
2020-06-30 18:03:23 +10:00
Sebastian Huber
b89e62fd19 Change version to RTEMS 6
Update #4020.
2020-06-30 09:14:05 +02:00
Chris Johns
0fd197f9a8 sb: Disable any trace data 2020-05-08 14:28:09 +10:00
Chris Johns
1f972c2108 sb: Add git clean to the supported git commands. 2020-05-08 14:28:04 +10:00
Anders Montonen
ae9faa2726 sb/linux.py: Workaround for Python >= 3.8
The platform.dist() interface has been deprecated since Python 3.5, and
has been removed in Python 3.8.

Fixes:
Traceback (most recent call last):
  File "/home/anders/work/rtems/rsb/source-builder/sb/options.py", line 682, in load
    overrides = linux.load()
  File "/home/anders/work/rtems/rsb/source-builder/sb/linux.py", line 60, in load
    distro = platform.dist()[0]
AttributeError: module 'platform' has no attribute 'dist'

Signed-off-by: Anders Montonen <Anders.Montonen@iki.fi>
2020-04-28 08:49:25 +10:00
Anders Montonen
0c7965c093 sb: Fix Python literal comparison warnings
Fixes:
SyntaxWarning: "is" with a literal. Did you mean "=="?

Signed-off-by: Anders Montonen <Anders.Montonen@iki.fi>
2020-04-28 08:49:05 +10:00
Gedare Bloom
4727c3e58f sb/reports: add sanitize parameter enabled for --mail
Adds a --sanitize option to command line for reports.py
and also for the reports.report() interface from setbuilder.py
to remove the Remotes information from git.

Closes #3887.
2020-04-04 22:11:00 -06:00
Gedare Bloom
54e08b8580 sb/reports.py: Remove spurious error check
The error path is taken when list-bsets or list-cfgs returns
true (meaning it listed them). So the error is invalid.
2020-04-01 21:55:39 -06:00
Chris Johns
fe63ad8777 sb/execute: Port fixes from rtems-tools 2020-03-30 10:46:38 +11:00