View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0030294||FPC||Compiler||public||2016-06-19 12:35||2018-09-10 19:25|
|Reporter||Simon Ameis||Assigned To|
|Summary||0030294: Include Sub Architecture / instruction set in Unit Path|
|Description||Especially for embedded CPU targets, a subarchitecture specifies the instruction set, the microcontroller unit can operate on.|
Currently it is not possible to compile and install the RTL for multiple subarchitectures of the same CPU architecture at the same time.
For example, you may need to build your code for different ARM processors which either use ARMV6 or ARMV7.
The unit path could be changed from <fpc_version>/units/<arch>-<ostarget> to <fpc_version>/units/<arch>-<ostarget>-<subarch>
|Additional Information||This would require a change in the installer, and in the default configuration files. Maybe it's also required to create a new compile time definition for the subarchitecture|
|Tags||embedded, installer, Path|
|Fixed in Revision|
I am pretty sure that a disciplined programmer can do that already.
there are many make! and compiler options to do just that
While Thaddy isn't wrong, I think that something as common (for arm & avr) as compiling for different subarchitectures should just work.
Florian started some work a while ago: https://svn.freepascal.org/cgi-bin/viewvc.cgi?view=revision&revision=30766
Florian's modification works when building the compiler and rtl, but fails for packages. I fixed that with a slight modification to Florian's approach and modified fpmkunit to also follow this convention: https://firstname.lastname@example.org/msg36515.html
|2016-06-19 12:35||Simon Ameis||New Issue|
|2016-06-19 12:35||Simon Ameis||Tag Attached: embedded|
|2016-06-19 12:35||Simon Ameis||Tag Attached: installer|
|2016-06-19 12:35||Simon Ameis||Tag Attached: Path|
|2018-09-10 16:04||Thaddy de Koning||Note Added: 0110614|
|2018-09-10 19:25||Christo Crause||Note Added: 0110616|