NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
port-arm/48193: On NetBSD/evbearmv6hf-el for Raspberry Pi, MACHINE_ARCH returns earm, but *hf* is expected in /usr/share/mk/bsd.own.mk .
>Number: 48193
>Category: port-arm
>Synopsis: On NetBSD/evbearmv6hf-el for Raspberry Pi, MACHINE_ARCH
>returns earm, but *hf is expected in /usr/share/mk/bsd.own.mk .
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: port-arm-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Sep 08 09:55:01 +0000 2013
>Originator: Ryo ONODERA
>Release: NetBSD 6.99.23
>Organization:
>Environment:
System: NetBSD silver.elements.tetera.org 6.99.23 NetBSD 6.99.23 (RPINODEBUG)
#1: Sun Sep 8 09:04:07 UTC 2013
ryo_on%deuterium.ryoon.net@localhost:/usr/obj/evbearmv6hf-el/sys/arch/evbarm/compile/RPINODEBUG
evbarm
Architecture: x86_64
Machine: amd64
$ uname -p
earm
$ uname -m
evbarm
>Description:
On NetBSD/evbearmv6hf-el for Raspberry Pi, MACHINE_ARCH is "earm".
$ cd /usr/pkgsrc
$ $ make -V MACHINE_ARCH
earm
But in base's /usr/share/mk/bsd.own.mk, there is the following code.
#
# Default mips64 to softfloat now.
# arm is always softfloat unless it isn't
# emips is always softfloat.
# coldfire is always softfloat
#
.if ${MACHINE_ARCH} == "mips64eb" || ${MACHINE_ARCH} == "mips64el" || \
(${MACHINE_CPU} == "arm" && ${MACHINE_ARCH:M*hf*} == "") || \
${MACHINE_ARCH} == "coldfire" || \
${MACHINE} == "emips"
MKSOFTFLOAT?= yes
.endif
Then softfloat is enabled on evbearmv6hf-el (hardfloat) system.
This inconsistency causes build failure of pkgsrc/sysutils/checkperms,
very essential program for pkgsrc developers (and many programs, I believe).
Error message is the following.
# compile checkperms-1.11/checkperms.o
gcc -O2 -msoft-float -std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wpointer-arith -Wno-sign-compare -Wno-traditional -Wa,--fatal-warnings
-Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wextra
-Wno-unused-parameter -Wno-sign-compare -Wsign-compare -Wformat=2
-Wno-format-zero-length -Werror -c checkperms.c
# link checkperms-1.11/checkperms
gcc -Wl,-R/usr/pkg/lib -o checkperms checkperms.o -Wl,-rpath-link,/lib
-L=/lib
ld: error: checkperms uses VFP register arguments, checkperms.o does not
ld: failed to merge target specific data of file checkperms.o
*** Error code 1
Please fix softfloat/hardfloat detection mechanism on earm.
>How-To-Repeat:
See above.
>Fix:
I have no idea.
>Unformatted:
Home |
Main Index |
Thread Index |
Old Index