Experimental TARGET_ARCH armv6hf - missing fpsetmask?

Kover Attila koverat at freemail.hu
Tue Apr 8 09:19:24 UTC 2014


Hi,

> I just wanted to let you know that compiling perl 5.16 on a r264192
> armv6hf kernel and world fails early because of missing the/a fpsetmask
> function. Same release with armv6 kernel and world compiles successfully.

I was get the same problem not only with perl 5.16 but with 5.18 too, but I was found a temporary workaround: I was edited perl.h and commented out the lines which responsible for the fpsetmask definition (see below the diff), so basically it is like '#ifdef HAS_FPSETMASK' false and the '#else' block will "run" in compile time.

Best Regards
Attila



[root at freepi ~]# uname -ap
FreeBSD freepi 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r264192M: Sun Apr  6 19:40:52 CEST 2014     root at dlc:/root/ujra/svnhead/obj/arm.armv6hf/root/ujra/svnhead/head/sys/RPI-B-DRS  arm armv6hf
[root at freepi ~]# perl --version

This is perl 5, version 18, subversion 2 (v5.18.2) built for arm-freebsd-thread-multi-64int

Copyright 1987-2013, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

[root at freepi ~]#



[root at freepi /usr/ports/lang/perl5.18/work/perl-5.18.2 ]# diff perl.h perl-armv6hf.h 
2730,2733c2730,2733
< #  ifdef HAS_FPSETMASK
< #    if HAS_FLOATINGPOINT_H
< #      include <floatingpoint.h>
< #    endif
---
> // #  ifdef HAS_FPSETMASK
> // #    if HAS_FLOATINGPOINT_H
> // #      include <floatingpoint.h>
> // #    endif
2738,2739c2738,2739
< #    define PERL_FPU_INIT (void)fpsetmask(0)
< #  else
---
> // #    define PERL_FPU_INIT (void)fpsetmask(0)
> // #  else
2749c2749
< #  endif
---
> // #  endif




More information about the freebsd-arm mailing list