Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 05 Dec 2017 10:57:20 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   [Bug 224107] multimedia/libvpx: broken on armv*, add an armv6-linux-gcc target
Message-ID:  <bug-224107-13@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D224107

            Bug ID: 224107
           Summary: multimedia/libvpx: broken on armv*, add an
                    armv6-linux-gcc target
           Product: Ports & Packages
           Version: Latest
          Hardware: arm
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Individual Port(s)
          Assignee: jbeich@FreeBSD.org
          Reporter: mikael.urankar@gmail.com
                CC: freebsd-arm@FreeBSD.org
             Flags: maintainer-feedback?(jbeich@FreeBSD.org)
                CC: freebsd-arm@FreeBSD.org
          Assignee: jbeich@FreeBSD.org

Created attachment 188541
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D188541&action=
=3Dedit
patch

* the following condition is not correct, we can specify -mcpu=3Dcortex-a7 =
to
build for armv7:
if ${CFLAGS:M-march=3Darmv7*}

 * I would like to add an armv6-linux-gcc target so we can benefit the
arm_cpudetect feature on armv6

 * 2 problems (an error and a warning) in patch-vpx__ports_arm__cpudetect.c:

When we have the sys/auxv.h header we miss the getauxval function (sys/auxv=
.h
doesn't provide it)

#if __has_include(<sys/auxv.h>)
#include <sys/auxv.h>
#else
snip
int arm_cpu_caps(void) {
snip
hwcaps =3D getauxval(AT_HWCAP);
snip

so the build fails:
vpx_ports/arm_cpudetect.c.o: In function `arm_cpu_caps':
vpx_ports/arm_cpudetect.c:(.text+0x50): undefined reference to `getauxval'


the 2nd problem is that we don't provide the prototype for getauxval:

cc  -O -pipe  -fno-strict-aliasing -march=3Darmv6 -DNDEBUG -O3 -fPIC
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3D0 -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=3D64 -Wall -Wdeclaration-after-statement
-Wdisabled-optimization -W
float-conversion -Wpointer-arith -Wtype-limits -Wcast-qual -Wvla
-Wimplicit-function-declaration -Wuninitialized -Wunused -Wextra -Wundef
-Wshorten-64-to-32 -I. -I"/usr/ports/multimedia/libvpx/work/libvpx-1.6.1
" -c -o vpx_ports/arm_cpudetect.c.o vpx_ports/arm_cpudetect.c=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20
vpx_ports/arm_cpudetect.c:198:12: warning: implicit declaration of function
'getauxval' is invalid in C99 [-Wimplicit-function-declaration]=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20
  hwcaps =3D getauxval(AT_HWCAP);


The attached patch addresses the first 2 points, I don't know the code well
enough to fix the others problems.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-224107-13>