rasc_iccarm file for include and preprocessor settings

Moving from RACS v5.2 to v5.7 the iar ipcf-project description file now adds a rasc_iccarm file (using the -f option) to store include paths and preprocessor define settings. This gives us some problems in our build chain. 

Is there a way to switch off the generation of the -f rasc_xxxx files into the ipcf file?

Parents
  • Hi MIR,

    Can you kindly indicate which IAR version you are using ?

    BR,

    PM_Renesas

  • We are using 9.60.3 

    But what I'm asking is if there a way to turn this of in RASC. Earlier these settings (now located in rasc_xxx files), was set in the IAR project-file "myProj.ewp" 

  • Hello MIR,

    Yeah it seems that in RASC versions newer than 5.2.0 RASC the build_info.ipcf file is generated in different way than in rasc FSP version 5.2.0.

    Here you can see how the preprocessor defines and the includes are included  in build_info.ipcf : 

    And in newer RASC versions like 5.3.0 these versions are included from these .xcl files you mention:

    If you will try to overwrite this file and keep the form again from the older RASC versions and you try to rebuild it again this will overwrite the file.

    Please let me check this further and get back to you. Meanwhile can you please specify which device you are using?

    Thanks and Regards,

    IK

  • We are using RA6M3

    Some additional input/question.

    The rasc_xxx files does not include the default extension xcl. the IAR EW will add this so for the EW that is not relevant. But other tools will not and will break. It would be good if the extension is added.

    In the ipcf-file paths are relative but the generated rasc_xxx files have absolute paths. So these files can't be shared between developers.

  • Hello MIR,

    Thanks for the info. Please let me inform you that I am also checking this with our tools team and as soon as I have feedback I will get back to you.

    Best Regards,

    IK

  • Hello  ,

    The extra command line options can be changed from EWARM project options to a new file customized by the user. RASC is not supposed to overwrite this option in the project file (*.ewp). Project connection file (buildinfo.ipcf) generated by RASC can point XCL files generated by RASC, but EWARM will use the pointed in the project file. We have attached an example project and a screenshot about our test.

    It is also possible to disable the RASC invocation in prebuild steps from Options > Build Actions. If the configuration.xml does not contain any new change, it is not required to invoke RASC for generating the project content.

     

    So that every time you build your project the batch file invoking RASC and generating code will not run and overwrite your build_info.ipcf file of your project.

    ewarm.zip

    Hope it helps!

     Please feel free to reach out to us if you have further questions on this!

    Thanks and Regards,

    IK

  • It is correct that RASC won't overwrite the option if I change it, But since it is in the ipcf-file the original option will still be added when the project is re-opened . We use GUI-RASC and have already disabled the pre and post-build rascc-steps. 

    I think the only option left is to post-process the ipcf-file. Why isn't there a pre/post build step in the GUI-RASC? That would have been really good in this case.

  • Hello MIR,

    After discussing with our tools team, please let me inform you that:

    The reason new RASC versions generate XCL files is because the data-driven toolchain options can add/modify toolchain options that are not available in the build_info.ipcf. Based on the selected FSP components and properties, advanced toolchain options can be modified according to the FSP data.

    It is ok to disable RASC in pre-build command once the configuration.xml is stable but managing this will be in user responsibility.

    RASC invocation in Post-build command is for generating smart-bundle file. This is required if some other projects depend on this project. (e.g. non-secure projects requires the smart bundle of secure projects). If no other projects is referencing it, it is also fine to disable it, but it does not update the project source content and toolchain flags, so IMO it should be fine to leave it.

    Lastly, we have tried using multiple XCL files, and it also works fine. So, maybe you can amend the toolchain options without removing/editing the xcl files generated by RASC. We have attached the snapshot of this example. This probably easier to implement and manage by the user, if it works for you.

     

    We don’t know  what kind of toolchain options you need. If you need to add new options, having multiple xcl files should be fine. If you need to remove some options that RASC add, it depends on the specific options for the toolchain, for example a macro symbol added by -D can be removed by -U.

    Thanks and Regards,

    IK

  • Hi,

    Thanks for the update. 

    Why the pre-build step in IAR EW? If we have already generated output using RASC GUI, what does the pre-build step in the IAR project add? Isn't all files already generated? It just seams as we run the file-generation once more very time we build the project.

    In parallel we have started to look into using power shell script to post process the ipcf-file. We'll see which solution we will end up using.

    Is there any plans to add a way for the user to add post build steps in the RASC GUI (like there is in the IAR EW)?

  • Yeah, in case you simply want to edit the EWARM project options and add your extra preprocessors or included depending the settings you want , if invoking RASC and RASC is generating code on every build , since you didn't disabled the pre-build and post-build files the changes in EWARM project will not be lost.

    However if you want to modify the build_info.ipcf file which generates as soon as you generate code to RASC if invoking RASC on each build and you want to edit this file on each build the RASC will invoke and the changes you made will be lost.

    So you could for sure disable the pre-build settings if you don't want something like that and regarding the post-build file it doesn't make sense to disable it if the project’s smart bundle will not be referenced by some other projects. TrustZone secure projects are the typical usages for that. The other one is bootloader projects.

    RA6M3 doesn't support TrustZone so the only case for which we wouldn't recommend if you were developing any bootloader and application project where there is linkage between the two projects.

    If not than you can for sure also disable the post-built step.

    You also mentioned that:

    In parallel we have started to look into using power shell script to post process the ipcf-file. We'll see which solution we will end up using.

    Is there any plans to add a way for the user to add post build steps in the RASC GUI (like there is in the IAR EW)?

    I am not aware of any plans to do this on a newest RASC version. However I can check with the tools team also.

    However why don't you consider to add this process in the pre-build step of the EWARM project? So that the .ipcf info file will be modified according your needs and than you will proceed with building your project.

    Thanks and Regards,

    IK

  • Hello  

    Could you please indicate why you would like to update buildinfo.ipcf file? The purpose of this file is allowing some options to be updated by external tools like RASC. It is not really intended to be used for manual updates.

    “IAR Project Connection: IAR developed a tool for external applications to contribute into an IAR Embedded Workbench project. This mechanism is called IAR Project Connection and allows to define a project config in a XML style config file (.ipcf). IAR Embedded Workbench updates the project dynamically if this file is changed.”

    Checked also with the tools team and for now there are not any plans to add customizable post build steps on RASC. However, you can add your own build steps on EWARM from Options > Build Actions.
    If you would like to amend existing RASC related prebuild/post build steps, It can be ok, but time to time new versions of RASC can also update these actions in the old project files. For example when we need to add a new argument.

    Thanks and Regards,

    IK

Reply
  • Hello  

    Could you please indicate why you would like to update buildinfo.ipcf file? The purpose of this file is allowing some options to be updated by external tools like RASC. It is not really intended to be used for manual updates.

    “IAR Project Connection: IAR developed a tool for external applications to contribute into an IAR Embedded Workbench project. This mechanism is called IAR Project Connection and allows to define a project config in a XML style config file (.ipcf). IAR Embedded Workbench updates the project dynamically if this file is changed.”

    Checked also with the tools team and for now there are not any plans to add customizable post build steps on RASC. However, you can add your own build steps on EWARM from Options > Build Actions.
    If you would like to amend existing RASC related prebuild/post build steps, It can be ok, but time to time new versions of RASC can also update these actions in the old project files. For example when we need to add a new argument.

    Thanks and Regards,

    IK

Children
No Data