Model RealTime 10.2 2018.40 ifix4

173275: FIXFOR 10.2 ifix4 - Transitions not shown in inherited state diagram

Fixed an exception that prevented a state chart diagram rendered correctly.

173267: FIXFOR 10.2 ifix4 - CQPAR00244733 - Model Compiler cannot handle other drives than the C-drive in the "Build Folder" setting of an External Library tcjs

Model compiler used wrong build location for external library TC when its Build folder was on a different drive (D:).
This problem has been fixed in Model RealTime 10.2 2018.40-ifix4

173263: FIXFOR 10.2 ifix4 - CQPAR00246765 ALL_OBJS_LIST support in Model compiler

Defining ALL_OBJS_LIST = @$(ALL_OBJS_LISTFILE) in libset.mk and using GNU_make type will have effect on the generated link command: it will contain a reference to objects list file @*.olist, also objects listed in the file will have correct extensions.
Verified to be correctly supported in Model RealTime 10.2 2018.40-ifix4

173254: FIXFOR 10.2 ifix4 - CQPAR00246782 $defaultMakeCommand for the recursive make call should be: $(MAKE)

For GNU_make type and Recursive batch.mk generation of recursive make calls has been enhanced and now "$defaultMakeCommand" is replaced with $(MAKE) in generated batch.mk.
Also, if GNU make command is used, specification of target folder "$(IN) <target folder>" is replaced with "-C <target folder>" make option.
Both improvements are implemented for all recursive make calls including Make commands generated from External Library TCs.
So, now recursive make calls look like this:
all :
@$(ECHO) Building in folder ../../Lib1__target/default
@$(MAKE) -C ../../Lib1__target/default all
@$(ECHO) Building in folder ../../CppProject/Debug
@$(MAKE) -C ../../CppProject/Debug all
@$(ECHO) Building in folder .
@$(MAKE) -C . all
This change is needed to correctly support parallel builds with GNU make. Implemented in Model RealTime 10.2 2018.40-ifix4
See more documentation on $(MAKE):
https://www.gnu.org/sof…ke.html#MAKE-Variable

173253: FIXFOR 10.2 ifix4 - CQPAR00238740 - RSA-RTE: Model Compiler: create option to detect source dependencies automatically

- Preference "Detect source dependencies automatically" was added to the C++ preference page
- Missing sources are added automatically by the Model Compiler when this preference is on
- Additional information about missing sources is printed into UML Development build console if "Report details about automatically added source elements" is enabled.
- Final message with overview of all added sources is printed like this :
12:41:06 : INFO : Adding missing sources on-the-fly to "AutoSources/buildWithPrereq.tcjs" :
'platform:/resource/AutoSources/AutoSources.emx#_N3m2EOqZEemPka_TKJ4ApA' /* AutoSources::Capsule2 */,
'platform:/resource/AutoSources/AutoSources.emx#_RVZyoOqZEemPka_TKJ4ApA' /* AutoSources::Local_RENAMED */,
'platform:/resource/OtherProject1/OtherProject1.emx#_CWreoOqbEemPka_TKJ4ApA' /* OtherProject1::OtherClass2 */,
'platform:/resource/OtherProject1/OtherProject1.emx#_AQqNUOqbEemPka_TKJ4ApA' /* OtherProject1::OtherClass1 */,
'platform:/resource/OtherProject1/OtherProject1.emx#_D516gOqbEemPka_TKJ4ApA' /* OtherProject1::OtherClass3 */
It is printed in such a format that you can just copy sources from the log and paste into TCJS editor into the Code tab and then save updates in TCJS file on disk.
- If there were missing sources found and automatically added into TCs, a warning message will be printed forcing developers to actually check if the sources were added correctly and save update list of sources into TCJS file:
16:04:33 : WARNING : Found elements which are not included as source into any TC, some of them could have been added into wrong context
Implemented in 10.2 2018.40-ifix4

173250: FIXFOR 10.2 ifix4 - Further requests on the CODAN support

Generation of target CDT projects has been improved to better support standard compiler include paths and symbols needed for CODAN.
Now if the flag "Generate additional information for Code Analysis" is specified, Model RealTime will add Compiler command with flags to the toolchain settings and apply CDT GCC Build-in Compiler Settings provider on the generated target projects, so it will automatically compute compiler symbols and include paths.
Supported only for GNU_make type.
Implemented in Model RealTime 10.2 2018.40-ifix4

173249: FIXFOR 10.2 ifix4 - ExternalTargetProject configuration causes issues with externalLibratyTC

ExternalTargetProject property is obsolete and it does not influence any more on the list of target projects used by Ant Build and some other tasks. This property is not added to *.tc files by TC editor and it is not converted to the new TCJS format.
ExternalTargetProject property will be removed from legacy TCs as soon as you start changing Build folder property in TC editor (but only if project specified in this property exists in your workspace).
If ExternalTargetProject property is not relevant and references a non-existing project, it will not be automatically removed from TC, but you can always remove it manually by deleting a line similar to this from your TC file:
<Property id="com.ibm.xtools.umldt.core.ExternalTargetProject" value="@46,=@com.ibm.xtools.transform.core.metatype.project/RG_DistributedFunction"/>
Fixed in Model RealTime 10.2 2018.40-ifix4