102 Commits

Author SHA1 Message Date
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
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
3a4892dce1 sb/setbuilder: Support line continuation 2022-09-09 09:08:09 +10: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
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
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
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
Chris Johns
074ef0c6cd sb/setbuilder: Output the mail send failure message on error 2019-11-19 11:19:43 +11:00
Chris Johns
5f7c53a7bd sb: Align the version processing with rtems-tools.
- Use the same VERSION file format as rtems-tools so a common release
  generation can be used.

- The version.py is almost the same as rtems-tools. There are some
  minor differences, one is the RTEMS version is present in this
  file while rtems-tool uses config/rtems-release.ini.

Updates #3822
2019-11-18 11:29:45 +11:00
Chris Johns
4b7af07300 5/llvm: Add LLVM as a package for RTEMS.
- Add '%source download <source>' to only download the source
  and do not unpack and prep. This can used when a package
  internally needs another source package.

- Install the staging root only if it is present. A package
  may internally build another package that is not staged as it
  is not suitable for installing.

Updates #3250
Updatew #3797
2019-09-16 08:21:40 +10:00
Chris Johns
b3b5ca9ec3 sb/setbuilder: Add a trace to help installing. 2019-09-16 08:21:40 +10:00
Chris Johns
8bedf509be sb/setbuilder: Check is mail is valid. 2019-08-29 13:28:19 +10:00
Chris Johns
cdd5aef6a9 sb: Send only one mail when building a BSP
- Add support to email a single report if configured to do so.
2019-08-27 21:20:12 +10:00
Chris Johns
831ae05364 rtems/bsp: Build packages for the beagle BSP.
Closes #3769
2019-07-22 09:36:38 +10:00
Chris Johns
b1c2cb4f72 sb/setbuilder: Support staging of build set build before installing.
- Staging lets build sets use previously built build sets.

- Fix the rtems-bsp builds to support staging.
2019-07-21 21:09:34 +10:00
Chris Johns
c799e04a8f 5/packages: Add curl and update all packages with RTEMS 5 and LibBSD
- Update rtems-bsp support to correctly handle hosts for BSP.
- Clean up the options for a BSP.
- Check all RTEMS 5 packages and add 5/rtems-packages for all that build.
- Update download locations and checksum of all packages.

- The work requires the kernel and Libbsd hacve the same prefix.
2019-07-21 21:09:34 +10:00
Sebastian Huber
5f6ad9d08b Fix 'build_max_size_human' ref. before assignment
Close #3568.
2019-01-11 07:24:47 +01:00
Chris Johns
96c414c8ff windows: Remove BuildRoot from all configs, add a short tmp path.
Closes #3562.
2018-11-05 15:46:42 +11:00
Chris Johns
c5d84ce84f sb/setbuilder: Print patches in the size section of the email report. 2018-10-21 13:14:20 +11:00
Chris Johns
079f95a91b sb: Add build sizes to the email report.
- Include build sizes in the email report.

Updates #3516
2018-09-28 08:15:55 +10:00
Chris Johns
38fd56c8a8 sb: Monitor the build disk usage. Report the usage, total and various sizes
- Track the size of a build of a package in a build set to determine the
  maximum amout of disk space used. This can be used as a guide to
  documenting how much space a user needs to set aside to build a specific
  set of tools.

- The `%clean` stage of a build is now split into a separate script.
  I do not think this is an issue because I could not find any `%clean`
  sections in any build configs we have. In time support for the
  `%clean` section will be removed, the package builder cleans up.

Closes #3516
2018-09-28 07:36:49 +10:00
Chris Johns
a16bfe19ef sb: Raise an error if an option is not registered and unknown.
Close #3519.
2018-09-15 17:43:29 +10:00
Chris Johns
4dc9bf3a37 sb: Add platform reporting for better host reviewing in posted email reports. 2017-10-31 11:57:21 +11:00
Chris Johns
8cdc8e42e4 sb: Remove debug print left in by mistake. 2017-10-27 17:36:06 +11:00
Chris Johns
70e3e5e115 sb: Set the to email address to build@rtems.org.
- Fix a minor bug in the to addr processing.

Update #3210
2017-10-27 17:34:00 +11:00
Chris Johns
0f97375242 sb: Provide a more detail email message.
Close #3210.
2017-10-27 17:26:26 +11:00
Chris Johns
29819a2719 sb: fix the if logic to handle directives in if statements.
Directives in if statements end at the end of an if. The cannot
change or split across directive boundaries.

Add more trace detail to config.py.

Updates #2661.
2016-03-19 17:25:34 +11:00
Chris Johns
38ed59a301 sb: Support --dry-run --with-download for 3rd party RTEMS BSP packages.
The building of 3rd party packages for an RTEMS BSP requires a valid
BSP so the standard method to download the source for releasing does
not work. This change adds support to allow this. The RTEMS BSP support
will not generate an error is no BSP or tools are provided or found.

The change addis logic operators to the %if statement so you can '||'
to 'or' and '&&' to 'and' logic expressions.

A new %log directive has been added to clean up the messages.

A new %{!define ...} has been added to aid checking within logic
expressions.

All command line --with/--without now appear as macros.

Add version.version to get just the RTEMS major and minor version.

Some pkg-config issues have been resolved.

Closes #2655.
2016-03-17 16:50:05 +11:00
Chris Johns
52561d9d95 sb: Do not expand the package name in a bset file.
If the package references macros yet to be defined an error is
generated. Let the macro expands happen when the package name is
actually used.

Closes #2645.
2016-03-16 16:53:02 +11:00
Chris Johns
62f76d9817 sb: Fix typo on the urlparse name in download.py
Updates #2619.
2016-03-10 15:06:32 +11:00
Chris Johns
e645642255 qemu: Add a package name to create a tarball. 2016-03-07 15:03:04 +11:00
Chris Johns
3a972f6102 sb: Update code base to support Python3 and Python2.
Fix Windows support to allow MSYS2 Python to be used.

Updates #2619.
2016-03-07 15:02:58 +11:00
Chris Johns
056e601477 Wrap the tar command in double quotes for Windows cmd.exe.
Windows cmd.exe does not support a single quote for options. Change to
a double quote.

Closes #2615.
2016-02-25 14:30:31 +11:00
Chris Johns
47d703fd8c sb. Add VERSION support for releasing the RSB.
Add support to release the RSB by adding the VERSION file. The file
is a single line with the version.

Fix the reports to include the version. Update the INI file
support to include the details of the build.

Show the GIT or released version when the command starts.

Closes #2480.
2015-12-03 22:25:00 +11:00
Chris Johns
6444d5806d Canandian Cross Compiling and RTEMS 3rd party package building Fixes.
The change fixes installing for RTEMS 3rd Party packages where the
RSB considered them Canadian Cross Compiling (Cxc). Fixing the
Cxc issue broke real Cxc builds. The change corrects the issue of
macros being changed in the Cxc and the prep data not being udpated.
The configuration is loaded again after the updated macros. The
macros are also copied and restored to ensure a clean stable base.

The change also introduces --rtems-tools and --rtems-bsp to align
the command line with the waf configure process or RTEMS application.
2015-07-20 13:49:42 +10:00
Chris Johns
4bd058ea7c sb: Always generate an XML report. 2015-05-22 12:20:41 +10:00
Chris Johns
ce60578b8f sb: Fix reporting and installing the reports when building.
Switch the default report to text format.
Fix the report to support the set builder.
2015-05-21 21:49:25 +10:00
Chris Johns
eeded980e5 Fix the check to see if the path is writable. 2015-01-26 11:57:43 +11:00
Chris Johns
3963ac4aae Detect a Cxc build from the options and automatically disabled installing.
This is similar to always providing --no-install on the command when building
a Cxc package.
2015-01-18 11:24:11 +11:00
Chris Johns
53290f9bd7 sb: Add a dry run footer to ereports. 2014-08-14 07:10:52 +10:00
Chris Johns
a083b52921 Add checksum support for downloaded files.
File download by http, ftp, pw support checksum. The %hash
directive provides a means of setting a hash used to
checksum the file.

Files on disk or just downloaded are checked.
2014-07-29 16:35:43 +10:00
Chris Johns
120e101ca3 sb: Improve the error handling for setbuilder errors.
If an error happens in the setbuilder code report the error. Errors
in the build phase are logged in the RSB Error Report.
2014-06-15 17:12:10 +12:00
Chris Johns
65d94573a5 sb: Move error report generation to the build phase.
Generate a separate report of each package being built in a build set.
This creates a better list of faults in the case of nesting build sets
such as */rtems-all.
2014-05-15 08:49:34 +10:00
Chris Johns
9a15c40e1b sb: Implement %source and %patch to manage source and patches.
Remove the numbered source and patches and automatically manage
sources and patches. This removes the overhead in maintaining large
collections of patches.
2014-05-13 23:26:09 +10:00
Chris Johns
74da24cb61 sb: Generate an error report on an error.
Generate an error report users can send to the mailing list with
error details.
2014-05-08 13:20:29 +10:00