NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: 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 .



The following reply was made to PR port-arm/48193; it has been noted by GNATS.

From: Ryo ONODERA <ryo_on%yk.rim.or.jp@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: 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 .
Date: Sat, 14 Sep 2013 09:23:55 +0900 (JST)

 Hi,
 
 From: Izumi Tsutsui <tsutsui%ceres.dti.ne.jp@localhost>, Date: Tue, 10 Sep 
2013 14:30:01 +0000 (UTC)
 
 > The following reply was made to PR port-arm/48193; it has been noted by 
 > GNATS.
 > 
 > From: Izumi Tsutsui <tsutsui%ceres.dti.ne.jp@localhost>
 > To: gnats-bugs%NetBSD.org@localhost
 > Cc: tsutsui%ceres.dti.ne.jp@localhost
 > Subject: Re: 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 .
 > Date: Tue, 10 Sep 2013 23:28:42 +0900
 > 
 >  <arm/param.h> doesn't have proper *hf defines for sysctl.hw.machine_arch.
 >  http://nxr.netbsd.org/xref/src/sys/arch/arm/include/param.h?r=1.18#5
 
 Thank you.
 
 make -V MACHINE_ARCH returns earmhf for evbearmv6hf-el
 Raspberry Pi with the following patch.
 
 pkgsrc/sysutils/checkpems is built successfully.
 
 Index: param.h
 ===================================================================
 RCS file: /cvsroot/src/sys/arch/arm/include/param.h,v
 retrieving revision 1.18
 diff -u -r1.18 param.h
 --- param.h    22 Apr 2013 07:53:29 -0000      1.18
 +++ param.h    14 Sep 2013 00:02:22 -0000
 @@ -55,16 +55,26 @@
  # ifndef MACHINE_ARCH                 /* XXX For now */
  #  ifndef __ARMEB__
  #   ifdef __ARM_EABI__
 -#    define   _MACHINE_ARCH   earm
 -#    define   MACHINE_ARCH    "earm"
 +#    if (defined(__VFP_FP__) && !defined(__SOFTFP__)) /* hardfloat */
 +#     define  _MACHINE_ARCH   earmhf
 +#     define  MACHINE_ARCH    "earmhf"
 +#    else /* softfloat */
 +#     define  _MACHINE_ARCH   earm
 +#     define  MACHINE_ARCH    "earm"
 +#    endif
  #   else
  #    define   _MACHINE_ARCH   arm
  #    define   MACHINE_ARCH    "arm"
  #   endif
  #  else
  #   ifdef __ARM_EABI__
 -#    define   _MACHINE_ARCH   earmeb
 -#    define   MACHINE_ARCH    "earmeb"
 +#    if (defined(__VFP_FP__) && !defined(__SOFTFP__)) /* hardfloat */
 +#     define  _MACHINE_ARCH   earmhfeb
 +#     define  MACHINE_ARCH    "earmhfeb"
 +#    else /* softfloat */
 +#     define  _MACHINE_ARCH   earmeb
 +#     define  MACHINE_ARCH    "earmeb"
 +#    endif
  #   else
  #    define   _MACHINE_ARCH   armeb
  #    define   MACHINE_ARCH    "armeb"
 @@ -80,16 +90,26 @@
  # define      MACHINE         "arm"
  # ifndef __ARMEB__
  #  ifdef __ARM_EABI__
 -#   define    _MACHINE_ARCH   earm
 -#   define    MACHINE_ARCH    "earm"
 +#   if (defined(__VFP_FP__) && !defined(__SOFTFP__)) /* hardfloat */
 +#    define   _MACHINE_ARCH   earmhf
 +#    define   MACHINE_ARCH    "earmhf"
 +#   else /* softfloat */
 +#    define   _MACHINE_ARCH   earm
 +#    define   MACHINE_ARCH    "earm"
 +#   endif
  #  else
  #   define    _MACHINE_ARCH   arm
  #   define    MACHINE_ARCH    "arm"
  #  endif
  # else
  #  ifdef __ARM_EABI__
 -#   define    _MACHINE_ARCH   earmeb
 -#   define    MACHINE_ARCH    "earmeb"
 +#   if (defined(__VFP_FP__) && !defined(__SOFTFP__)) /* hardfloat */
 +#    define   _MACHINE_ARCH   earmhfeb
 +#    define   MACHINE_ARCH    "earmhfeb"
 +#   else /* softfloat */
 +#    define   _MACHINE_ARCH   earmeb
 +#    define   MACHINE_ARCH    "earmeb"
 +#   endif
  #  else
  #   define    _MACHINE_ARCH   armeb
  #   define    MACHINE_ARCH    "armeb"
 
 --
 Ryo ONODERA // ryo_on%yk.rim.or.jp@localhost
 PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB  FD1B F404 27FA C7D1 15F3
 


Home | Main Index | Thread Index | Old Index