purduesigbots / toolchain

CI scripts to build the necessary packages for components on the PROS toolchain
Mozilla Public License 2.0
1 stars 1 forks source link

✨Update arm-none-eabi to v14.1.0 #8

Open SizzinSeal opened 4 months ago

SizzinSeal commented 4 months ago

Requested Feature

Update arm-none-eabi to v14.1.0

Is this Feature Related to a Problem?

PROS supports c++20, but the current version of arm-none-eabi does not support all c++20 features (e.g constexpr string)

Benefits of Feature

Additional Information

Projects compiled with arm-none-eabi v14.1.0 can depend on binaries created with the currently bundled version of arm-none-eabi. This means that PROS and other libraries do not have to be recompiled for this new version. However, if PROS was compiled with arm-none-eabi v14.1.0 then users would all need the updated toolchain to build user projects.

Testing

I've tested this change in the following manner:

  1. Delete all arm-none-eabi related files in the PROS toolchain installation
  2. Install the latest version of arm-none-eabi manually
  3. Compiled user program with new toolchain
  4. Verify all PROS commands work as intended

My tests have shown this change to work without issue

RandomPythonProgrammer commented 1 day ago

Hello @SizzinSeal, I am very interested in how you were able to get a newer version of the arm-none-eabi for PROS. I would really love to use some of the c++20 features like modules in my code. I saw your issue: https://github.com/purduesigbots/pros/issues/687, but there does not seem to be activity on this. If you could give me some more details on how you went about removing the old files and installing the new files, that would be much appreciated. Thank you.