Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: NetBSD/earm and evbearmv7hf on Cubieboard 2
Ryo ONODERA wrote:
>From: Ryo ONODERA <ryo_on%yk.rim.or.jp@localhost>, Date: Mon, 20 Jul 2015 20:36:33 +0900 (JST)
>
>> Hi,
>>
>> From: Robert Swindells <rjs%fdy2.co.uk@localhost>, Date: Mon, 20 Jul 2015 11:14:33 +0100 (BST)
>>
>>>
>>> Ryo ONODERA wrote:
>>>>I will build Mozilla products on your image.
>>>
>>> I got an error trying to build latest firefox on my Cubietruck using -current
>>> from July 11, sorry for not posting it earlier:
>>>
>>> In file included from /u1/pkgsrc/www/firefox/work/build/gfx/skia/Unified_cpp_gfx
>>> _skia20.cpp:11:0:
>>> /u1/pkgsrc/www/firefox/work/mozilla-release/gfx/skia/trunk/src/opts/SkBitmapProc
>>> State_opts_arm.cpp: In function 'void SI8_opaque_D32_nofilter_DX_arm(const SkBit
>>> mapProcState&, const __uint32_t*, int, SkPMColor*)':
>>> /u1/pkgsrc/www/firefox/work/mozilla-release/gfx/skia/trunk/src/opts/SkBitmapProc
>>> State_opts_arm.cpp:189:1: error: fp cannot be used in asm here
>>> }
>>> ^
>>> /u1/pkgsrc/www/firefox/work/mozilla-release/config/rules.mk:931: recipe for targ
>>> et 'Unified_cpp_gfx_skia20.o' failed
>>> gmake[3]: *** [Unified_cpp_gfx_skia20.o] Error 1
>>> gmake[3]: Leaving directory '/u1/pkgsrc/www/firefox/work/build/gfx/skia'
>>> /u1/pkgsrc/www/firefox/work/mozilla-release/config/recurse.mk:74: recipe for tar
>>> get 'gfx/skia/target' failed
>>
>> My Cubieboard 2 builds libxml2 now.
>> It takes some hours to reach firefox-39.0 build.
>>
>> If you have already gtk2 or other required packages,
>> could you apply this patch?
>>
>> Thank you.
>
>Sorry previous patch has no path information.
The previous patch was fine, I had just been looking again at that file so
knew where to apply it.
>Here is correct one.
>
>--- gfx/skia/trunk/src/opts/SkBitmapProcState_opts_arm.cpp.orig 2015-06-30 22:57:52.000000000 +0000
>+++ gfx/skia/trunk/src/opts/SkBitmapProcState_opts_arm.cpp
>@@ -181,7 +181,7 @@ void SI8_opaque_D32_nofilter_DX_arm(cons
> "4: \n\t" // exit
> : [xx] "+r" (xx), [count] "+r" (count), [colors] "+r" (colors)
> : [table] "r" (table), [srcAddr] "r" (srcAddr)
>- : "memory", "cc", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11"
>+ : "memory", "cc", "r4", "r5", "r6", "r7", "r8", "r9", "r10"
> );
> }
There is another usage of r11 on line 100 of that file. With a similar
change to your patch above the build now stops with:
In file included from /u1/pkgsrc/www/firefox/work/build/gfx/skia/Unified_cpp_gfx
_skia8.cpp:38:0:
/u1/pkgsrc/www/firefox/work/mozilla-release/gfx/skia/trunk/src/core/SkUtilsArm.c
pp: In function 'bool sk_cpu_arm_check_neon()':
/u1/pkgsrc/www/firefox/work/mozilla-release/gfx/skia/trunk/src/core/SkUtilsArm.c
pp:112:68: error: 'TEMP_FAILURE_RETRY' was not declared in this scope
int fd = TEMP_FAILURE_RETRY(open("/proc/cpuinfo", O_RDONLY));
^
/u1/pkgsrc/www/firefox/work/mozilla-release/config/rules.mk:931: recipe for targ
et 'Unified_cpp_gfx_skia8.o' failed
There isn't a definition for TEMP_FAILURE_RETRY but the code around
this is trying to read /proc/cpuinfo to find out if the CPU supports
neon. We just return an empty string for reads of /proc/cpuinfo on ARM
so this won't work correctly even with a definition for
TEMP_FAILURE_RETRY.
There is similar code in graphics/libjpeg-turbo that needs a way of
detecting whether to use the neon versions of functions or not.
It looks as if we don't define __ARM_NEON__ for earmv7hf which is one
of the things that libjpeg-turbo tests for.
Robert Swindells
Home |
Main Index |
Thread Index |
Old Index