Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minor: Configuring with multiple RTEMS targets #95

Open
anjohnson opened this issue Aug 11, 2024 · 0 comments
Open

Minor: Configuring with multiple RTEMS targets #95

anjohnson opened this issue Aug 11, 2024 · 0 comments

Comments

@anjohnson
Copy link
Member

A GHA build configured with

CI_CROSS_TARGETS="RTEMS-beatnik@5:RTEMS-xilinx_zynq_a9_qemu@5:RTEMS-uC5282@5"

Seems to have built all 3 targets as I hoped it would, but during the cue.py prepare step it output this:

Configuring EPICS build system
  EPICS Base build system set up for optimized build with shared (DLL) linking
  Cross compiler RTEMS5 @ RTEMS-beatnik
  Downloading RTEMS 5 cross compiler: beatnik-rtems5.tar.xz
  /opt/rtems/5/bin/powerpc-rtems5-gcc --version
  powerpc-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5 (3911854[46](https://github.com/anjohnson/pvDataCPP/actions/runs/10337027940/job/28613430850#step:5:49)2e7 modified), Newlib 7947581)
  Copyright (C) 2017 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  
  Cross compiler RTEMS5 @ RTEMS-xilinx_zynq_a9_qemu
  Downloading RTEMS 5 cross compiler: xilinx_zynq_a9_qemu-rtems5.tar.xz
  /opt/rtems/5/bin/arm-rtems5-gcc --version
  arm-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5 (3911854462e7 modified), Newlib 7947581)
  Copyright (C) 2017 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  
  /opt/rtems/5/bin/powerpc-rtems5-gcc --version
  powerpc-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5 (3911854462e7 modified), Newlib 7947581)
  Copyright (C) 2017 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  
  Cross compiler RTEMS5 @ RTEMS-uC[52](https://github.com/anjohnson/pvDataCPP/actions/runs/10337027940/job/28613430850#step:5:55)82
  Downloading RTEMS 5 cross compiler: uC5282-rtems5.tar.xz
  /opt/rtems/5/bin/m68k-rtems5-gcc --version
  m68k-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5 (39118[54](https://github.com/anjohnson/pvDataCPP/actions/runs/10337027940/job/28613430850#step:5:57)462e7 modified), Newlib 7947581)
  Copyright (C) 2017 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  
  /opt/rtems/5/bin/arm-rtems5-gcc --version
  arm-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5 (3911854462e7 modified), Newlib 7947[58](https://github.com/anjohnson/pvDataCPP/actions/runs/10337027940/job/28613430850#step:5:61)1)
  Copyright (C) 2017 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  
  /opt/rtems/5/bin/powerpc-rtems5-gcc --version
  powerpc-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5 (39118544[62](https://github.com/anjohnson/pvDataCPP/actions/runs/10337027940/job/28613430850#step:5:65)e7 modified), Newlib 7947581)
  Copyright (C) 2017 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

So it downloaded each compiler just once, but ran the gcc --version commands for all of the installed cross-compilers in reverse order after installing each one.

It might be worth putting a check in the code when multiple RTEMS targets are built to ensure that they all specify the same RTEMS version. It's not possible to mix RTEMS versions in a single Base build tree.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant