[RTEMS Project] #3532: RSB source only download is host specific

RTEMS trac trac at rtems.org
Thu Sep 27 22:59:29 UTC 2018

#3532: RSB source only download is host specific
  Reporter:  Chris Johns  |      Owner:  Chris Johns
      Type:  defect       |     Status:  assigned
  Priority:  normal       |  Milestone:  5.1
 Component:  tool/rsb     |    Version:  5
  Severity:  blocker      |   Keywords:
Blocked By:               |   Blocking:
 The RSB source only download is host specific. Configurations for builds
 can restrict sources or patches by host to work around specific host
 issues. Currently a source only download is host specific because the host
 check is based on the host the RSB is being run on.

 The release process uses source only downloading to create the complete
 set of sources in a release. This issue means some host specific source
 may not be captured.

 I am yet to figure how to resolve this issue because the download logic is
 driven by the configuration scripts and this type of logic exists in
 configuration files such as `rtems-gcc-7.3.0-newlib-
 %if %{_build_os} == freebsd || %{_build_os} == darwin
  %patch add gcc --rsb-file=freebsd-libgcc-sed-fix.patch -p0
  %hash  sha256 freebsd-libgcc-sed-fix.patch
 The simpler construct `rtems-tools-common-1.cfg` of:
   %ifos win32 mingw ming32
    SB_BUILD_ROOT_WAF=$SB_BUILD_ROOT$(echo %{_prefix} | cut -c 1-2)
 is easier to manage as the `%ifos` logic can always return `True` however
 the `%else` patch also need to be followed and this could break the logic
 in a configuration file. Yes, the example is not about sources or patches
 however it shows what could be used.
 I do not think adding logic to the configuration file parsing will help,
 for example consider this case:
 %if %{_build_os} == freebsd || %{_build_os} == darwin
  %patch add gcc foobar-bsd.patch
  %patch add gcc foobar-gnu.patch
 We require the logic to follow the `%if True` path and the `%else` path.

Ticket URL: <http://devel.rtems.org/ticket/3532>
RTEMS Project <http://www.rtems.org/>
RTEMS Project

More information about the bugs mailing list