[MacPorts] #68050: cyclonedds: multiple build errors: error: storage size of 'mreqn' isn't known; error: 'MCAST_JOIN_SOURCE_GROUP' undeclared (first use in this function)

MacPorts noreply at macports.org
Sun Aug 27 02:57:21 UTC 2023


#68050: cyclonedds: multiple build errors: error: storage size of 'mreqn' isn't
known; error: 'MCAST_JOIN_SOURCE_GROUP' undeclared (first use in this
function)
--------------------------+------------------------
 Reporter:  barracuda156  |      Owner:  sikmir
     Type:  defect        |     Status:  assigned
 Priority:  Normal        |  Milestone:
Component:  ports         |    Version:  2.8.1
 Keywords:                |       Port:  cyclonedds
--------------------------+------------------------
 First of all, it needs `compiler.thread_local_storage yes`:
 {{{
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/idl/src/print.c:32:
 error: thread-local storage not supported for this target
 make[2]: *** [src/idl/CMakeFiles/idl.dir/src/print.c.o] Error 1
 }}}


 Then, there is the following:
 {{{
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:
 In function 'set_mc_options_transmit_ipv4_if':
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:391:21:
 error: storage size of 'mreqn' isn't known
   391 |     struct ip_mreqn mreqn;
       |                     ^~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:391:21:
 warning: unused variable 'mreqn' [-Wunused-variable]
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:
 In function 'joinleave_ssm_mcgroup':
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:637:29:
 error: storage size of 'gsr' isn't known
   637 |     struct group_source_req gsr;
       |                             ^~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:642:57:
 error: 'MCAST_JOIN_SOURCE_GROUP' undeclared (first use in this function)
   642 |     rc = ddsrt_setsockopt (socket, IPPROTO_IPV6, join ?
 MCAST_JOIN_SOURCE_GROUP : MCAST_LEAVE_SOURCE_GROUP, &gsr, sizeof (gsr));
       |
 ^~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:642:57:
 note: each undeclared identifier is reported only once for each function
 it appears in
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:642:83:
 error: 'MCAST_LEAVE_SOURCE_GROUP' undeclared (first use in this function)
   642 |     rc = ddsrt_setsockopt (socket, IPPROTO_IPV6, join ?
 MCAST_JOIN_SOURCE_GROUP : MCAST_LEAVE_SOURCE_GROUP, &gsr, sizeof (gsr));
       |
 ^~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:637:29:
 warning: unused variable 'gsr' [-Wunused-variable]
   637 |     struct group_source_req gsr;
       |                             ^~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:647:27:
 error: storage size of 'mreq' isn't known
   647 |     struct ip_mreq_source mreq;
       |                           ^~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:655:55:
 error: 'IP_ADD_SOURCE_MEMBERSHIP' undeclared (first use in this function);
 did you mean 'IP_ADD_MEMBERSHIP'?
   655 |     rc = ddsrt_setsockopt (socket, IPPROTO_IP, join ?
 IP_ADD_SOURCE_MEMBERSHIP : IP_DROP_SOURCE_MEMBERSHIP, &mreq, sizeof
 (mreq));
       |
 ^~~~~~~~~~~~~~~~~~~~~~~~
       |
 IP_ADD_MEMBERSHIP
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:655:82:
 error: 'IP_DROP_SOURCE_MEMBERSHIP' undeclared (first use in this
 function); did you mean 'IP_DROP_MEMBERSHIP'?
   655 |     rc = ddsrt_setsockopt (socket, IPPROTO_IP, join ?
 IP_ADD_SOURCE_MEMBERSHIP : IP_DROP_SOURCE_MEMBERSHIP, &mreq, sizeof
 (mreq));
       |
 ^~~~~~~~~~~~~~~~~~~~~~~~~
       |
 IP_DROP_MEMBERSHIP
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/core/ddsi/src/ddsi_udp.c:647:27:
 warning: unused variable 'mreq' [-Wunused-variable]
   647 |     struct ip_mreq_source mreq;
       |                           ^~~~
 make[2]: *** [src/core/CMakeFiles/ddsc.dir/ddsi/src/ddsi_udp.c.o] Error 1
 make[2]: *** Waiting for unfinished jobs....
 }}}
 And:
 {{{
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/time/darwin/time.c:
 In function 'ddsrt_time_monotonic':
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/time/darwin/time.c:65:28:
 warning: conversion to 'long long int' from 'uint64_t' {aka 'long long
 unsigned int'} may change the sign of the result [-Wsign-conversion]
    65 |   return (ddsrt_mtime_t) { mt * timeInfo.numer / timeInfo.denom };
       |                            ^~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:
 In function 'ddsrt_thread_getname':
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:74:12:
 error: 'MAXTHREADNAMESIZE' undeclared (first use in this function)
    74 |   char buf[MAXTHREADNAMESIZE + 1] = "";
       |            ^~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:74:12:
 note: each undeclared identifier is reported only once for each function
 it appears in
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:74:8:
 warning: unused variable 'buf' [-Wunused-variable]
    74 |   char buf[MAXTHREADNAMESIZE + 1] = "";
       |        ^~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:
 In function 'ddsrt_gettid':
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:356:3:
 warning: implicit declaration of function 'pthread_threadid_np'; did you
 mean 'pthread_is_threaded_np'? [-Wimplicit-function-declaration]
   356 |   pthread_threadid_np(NULL, &tid);
       |   ^~~~~~~~~~~~~~~~~~~
       |   pthread_is_threaded_np
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:
 In function 'ddsrt_gettid_for_thread':
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_cyclonedds/cyclonedds/work/cyclonedds-0.10.3/src/ddsrt/src/threads/posix/threads.c:369:10:
 warning: cast from pointer to integer of different size [-Wpointer-to-int-
 cast]
   369 |   return (ddsrt_tid_t) thread.v;
       |          ^
 make[2]: *** [src/ddsrt/CMakeFiles/ddsrt-
 internal.dir/src/threads/posix/threads.c.o] Error 1
 make[2]: *** Waiting for unfinished jobs....
 }}}
 For `pthread_threadid_np` we got a patch (for example, in `abseil` port
 now).

 We need to figure out how to fix the rest.

-- 
Ticket URL: <https://trac.macports.org/ticket/68050>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list