Thaddy de Koning wrote:
Not for ARMV6 EABIHF
Building for ARMV6+vfpv2 armhf is indeed a bit of a messs.
Afaict it's not possible to build a cross compiler that defaults to armv6 ARMHF without modifying the source. With the right flags you should be able to create a cross-compiler that is armhf but defaults to ARMv7 and then with the right flags to that you should be able to build a native armv6 armhf compiler using it but I have never tried this.
Since you seem to think we are keeping stuff secret I should say how things were actually bootstrapped for debian/raspbian.
The initial armhf port I did (of then-current trunk) was done on an armv7 system. using a debian armel build of 2.6.0 and manually setting -dFPC_ARMHF. This was easier at the time than it is now because iirc debian hadn't yet moved the system libraries to multiarch paths. Once my change was accepted into trunk I then backported the changes to 2.6.0 and packaged them in debian.
Later debian armhf packages were simply built using the existing debian packages. I did have to make a small change to get 2.6.2 armhf to build with 2.6.0 armhf.
The raspbian packages were based on the debian packages and added a further patch to the source to change the default target to armv6+vfpv2. The intial raspbian packages were built using the debian armhf packages, later raspbian packages were built using previous raspbian packages.
Meanwhile over in trunk fpk (iirc) added a patch to make the compiler default to targetting armv6+vfpv2 if the compiler itself was built for armv6. A trunk compiler built to target armhf and running on any other CPU will default to targetting armv7+vfpv3_d16.
Someone also added code to make fpc look for libraries in multiarch paths on armel and armhf (despite me having been previously told that we should use fpc.cfg and the fpc maintainers wouldn't do this).
You can sometimes get away with using armhf libraries with an armel compiler if you don't care about any C library calls that involve floating point being broken. Certainly enough worked for the threaded tools used in the FPC build process to work.
IMO there should be an option to the FPC build to build without linking against C libraries, it's kinda crazy that we have to screw arround with the source to do it.
_______________________________________________ fpc-devel maillist - [email protected] http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
