Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 681064 - >=media-libs/libaom-1.0.0-r1 fails to cross-compile with: CMake Error at build/cmake/aom_configure.cmake: No RTCD support for armv7a.
Summary: >=media-libs/libaom-1.0.0-r1 fails to cross-compile with: CMake Error at buil...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-20 18:26 UTC by tt_1
Modified: 2020-10-08 19:43 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build log of the cross-compile (libaom,5.65 KB, text/plain)
2019-03-20 18:26 UTC, tt_1
Details

Note You need to log in before you can comment on or make changes to this bug.
Description tt_1 2019-03-20 18:26:19 UTC
Created attachment 570058 [details]
build log of the cross-compile

how to reproduce:

emerge-armv7a-unknown-linux-gnueabihf -pv libaom dav1d 

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ~] media-libs/libaom-1.0.0-r1::gentoo to /usr/armv7a-unknown-linux-gnueabihf/ USE="-doc -examples" CPU_FLAGS_ARM="-neon" 0 KiB

the build log basically says, that there is no fallback if the detected cpu isn't yet covered by AOM_TARGET: 

--- aom_configure: Detected CPU: armv7a
CMake Error at build/cmake/aom_configure.cmake:125 (message):
  No RTCD support for armv7a.  Create it, or add -DAOM_TARGET_CPU=generic to
  your cmake command line for a generic build of libaom and tools.
Call Stack (most recent call first):
  CMakeLists.txt:77 (include)

so please add a generic fallback via -DAOM_TARGET_CPU=generic in case of cross-compile, thanks! 


(the native compile on arm isn't affected by this)
Comment 1 David Michael 2020-03-02 16:09:39 UTC
This was fixed upstream, but there hasn't been a new version tagged in a couple years.  Maybe a snapshot package could be added?

https://aomedia.googlesource.com/aom/+/caac4cdd85a1d78bf89a75d460ada2c66d2dad8d%5E%21/
Comment 2 tt_1 2020-03-02 18:28:47 UTC
thanks for the heads up, I added the commit locally on top of =libaom-1.0.0-r2, but to no avail. The initial bug seems kind of fixed, later the build system runs into a gazillion of these errors:

/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/9.2.0/include/arm_neon.h:10940:1: error: inlining failed in call to always_inline ‘vst1q_s16’: target specific option mismatch

which it does as well with the latest snapshot from upstream

Do you happen to have a google account and are thus able to upstream the issue?
Comment 3 David Michael 2020-03-27 14:54:50 UTC
Sorry, I apparently forgot to check the box to be CCed on this bug and missed your reply.  I do have a Google account for e-mail which might allow me to create issues on their tracker, but I'm not encountering your error.

I have the live ebuild pinned to this commit, and it builds successfully: EGIT_OVERRIDE_COMMIT_AOM="01c7a66021087cb65d33bc73812d89dd0ecac644"

I vaguely recall seeing errors like you describe at one point, and I think they were fixed by explicitly adding -mfpu=neon-vfpv4 to CFLAGS, but I'm not sure now.
Comment 4 tt_1 2020-03-28 12:32:25 UTC
indeed, cpu_flags_arm_neon is broken for libaom-9999, while the initial bug got solved. 

flipping the flag or adding -mfpu=neon-vfpv4 to the cflags does allow to compile with neon
Comment 5 David Michael 2020-05-07 15:51:44 UTC
This issue is fixed by this commit:

https://github.com/gentoo/gentoo/commit/9ef181c7aab319e2c069cf39923bdc03bdda67ec

Can someone address bug #715056 so this can be used with VLC?

Also note that the archive seems to have changed since the manifest was generated.

>>> Downloading 'http://distfiles.gentoo.org/distfiles/9e/libaom-1.0.0_p20200507.tar.gz'
--2020-05-07 11:34:48--  http://distfiles.gentoo.org/distfiles/9e/libaom-1.0.0_p20200507.tar.gz
Resolving distfiles.gentoo.org... 2600:3402:200:227::2, 2600:3404:200:237::2, 2605:bc80:3010::134, ...
Connecting to distfiles.gentoo.org|2600:3402:200:227::2|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2020-05-07 11:34:48 ERROR 404: Not Found.

>>> Downloading 'https://aomedia.googlesource.com/aom/+archive/1a090d5d5ac322add74ebb6b5df7f4074909cd09.tar.gz'
--2020-05-07 11:34:48--  https://aomedia.googlesource.com/aom/+archive/1a090d5d5ac322add74ebb6b5df7f4074909cd09.tar.gz
Resolving aomedia.googlesource.com... 2607:f8b0:400d:c0f::52, 172.217.197.82
Connecting to aomedia.googlesource.com|2607:f8b0:400d:c0f::52|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘/var/cache/distfiles/libaom-1.0.0_p20200507.tar.gz.__download__’

/var/cache/distfile     [      <=>           ]   3.40M  3.01MB/s    in 1.1s    

2020-05-07 11:34:49 (3.01 MB/s) - ‘/var/cache/distfiles/libaom-1.0.0_p20200507.tar.gz.__download__’ saved [3569463]

!!! Fetched file: libaom-1.0.0_p20200507.tar.gz VERIFY FAILED!
!!! Reason: Filesize does not match recorded size
!!! Got:      3569463
!!! Expected: 3569380
Refetching... File renamed to '/var/cache/distfiles/libaom-1.0.0_p20200507.tar.gz._checksum_failure_.ob4xq42z'

!!! Couldn't download 'libaom-1.0.0_p20200507.tar.gz'. Aborting.
Comment 6 tt_1 2020-05-16 11:25:04 UTC
mozilla has announced plans to fully switch to media-libs/dav1d for av1 and avif support, so that landing in release channel will fix the underlying bug for me.
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-10-08 19:43:38 UTC
Fixed in 2.0.0.