View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0027302||FPC||Compiler||public||2015-01-13 15:20||2020-01-24 20:13|
|Reporter||Michael Ring||Assigned To|
|Summary||0027302: Target mipsel-embedded is enabled in fixes_3_0 but it does not build.|
|Description||My branch was not merged completely, the units for the chips and the startup code are missing.|
I have provided patches for this in the past, main open issue was that when all devices are added this adds approx. 142MB to total fpc sources size, that's the reason (I guess) that they were not yet applied by Sergei.
I can cut this size to approx. half or I can reduce the number of exposed chips.
|Steps To Reproduce||make clean buildbase CROSSINSTALL=1 OS_TARGET=embedded CPU_TARGET=mipsel SUBARCH=pic32mx CROSSOPT="-O- -gw2" BINUTILSPREFIX=pic32-|
/usr/local/bin/gmkdir -p /Users/ring/devel/fpc-3.0/rtl/units/mipsel-embedded
make: *** No rule to make target `mipsel/startup.s', needed by `startup.o'. Stop.
|Additional Information||Perhaps the best way to go is to expose only a few chips right now and then to extend the compiler in 3.1.1 to be more flexible with embedded targets; I can also easily provide automagically created units for a lot of different ARM platforms (CMSIS based) but this would add several hundred, if not thousand new definitions that most propably never get used. Some kind of dynamic loading based on available units that a user downloads as needed would be nice. I could try to implement this.|
Which way to go, you decide ;-) I would really make sure that the exposed target actually compiles and produces working code.
|Fixed in Revision|
||I think there might be native build problems for mipsel as well, I'm reverting to an older version to make sure I don't have platform problems.|
||In my case I was able to build provided that I started off with a cross compiler (i.e. starting off with 2.6.4 which is correct but which does not itself have a MIPS target), so what I wrote was effectively off-topic for which I apologise.|
||Why does it take up that much space? How many files are we talking about here?|
||Another remark: the copyright of the startup.s is not suitable for the rtl (2nd clause).|
||Jeppe has proposed to make startup code include more pascal routines (please see riscv32 startup code as a reference), if you are OK with that approach I can provide a patch that uses the riscv32 style of startup code and eliminate the parts taken from microchip's startup code.|
||@Michael: yes, this would be great.|
|2015-01-13 15:20||Michael Ring||New Issue|
|2015-01-13 21:13||Simon Ameis||Tag Attached: cross compile|
|2015-01-13 22:29||Mark Morgan Lloyd||Note Added: 0080363|
|2015-02-05 20:20||Michael Ring||Note Added: 0080806|
|2015-02-10 21:35||Mark Morgan Lloyd||Note Added: 0080937|
|2015-03-27 10:46||Jeppe Johansen||Note Added: 0082369|
|2020-01-23 22:08||Florian||Note Added: 0120692|
|2020-01-24 09:52||Michael Ring||Note Added: 0120701|
|2020-01-24 20:13||Florian||Note Added: 0120719|