[MacPorts] #55238: mysql57 @5.7.17: error: no member named 'ifr_ifrn' in 'ifreq'

MacPorts noreply at macports.org
Sun Apr 19 20:07:56 UTC 2020


#55238: mysql57 @5.7.17: error: no member named 'ifr_ifrn' in 'ifreq'
----------------------+----------------------
  Reporter:  dgelmer  |      Owner:  (none)
      Type:  defect   |     Status:  assigned
  Priority:  Normal   |  Milestone:
 Component:  ports    |    Version:  2.4.2
Resolution:           |   Keywords:  lion
      Port:  mysql57  |
----------------------+----------------------

Comment (by chrstphrchvz):

 Something is going wrong during configuration on 10.8 and earlier, where
 CMake doesn't think the system's …/usr/include/net/if.h doesn't have
 `ifr_name` in `struct ifreq`:
 {{{
 ---> Configuring mysql57
 ⁝
 -- Performing Test HAVE_STRUCT_IFREQ_IFR_NAME
 -- Performing Test HAVE_STRUCT_IFREQ_IFR_NAME - Failed
 }}}
 …even though it likely always has on macOS (at least
 [https://github.com/phracker/MacOSX-
 SDKs/blob/master/MacOSX10.1.5.sdk/usr/include/net/if.h since 10.1.5]):
 {{{
 #!c
 struct  ifreq {
         /* ⁝ */
         char    ifr_name[IFNAMSIZ];             /* if name, e.g. "en0" */
         /* ⁝ */
         } ifr_ifru;
 }}}

 As a result `HAVE_STRUCT_IFREQ_IFR_NAME` doesn't get defined, and
 compiling gcs_xcom_networking.cc uses the wrong code block and fails:
 {{{
 #!c
 #ifdef HAVE_STRUCT_IFREQ_IFR_NAME
   std::string res= ifrecc->ifr_name;
 #else
   std::string res= ifrecc->ifr_ifrn.ifrn_name;
 #endif /* HAVE_STRUCT_IFREQ_IFR_NAME */
 }}}

 This might be easy to patch or work around.

-- 
Ticket URL: <https://trac.macports.org/ticket/55238#comment:7>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list