--- a/groupsock/GroupsockHelper.cpp
+++ b/groupsock/GroupsockHelper.cpp
@@ -676,12 +676,14 @@ Boolean socketLeaveGroup(UsageEnvironmen
 // commands, and a special structure (ip_mreq_source).  If the include files
 // didn't define these, we do so here:
 #if !defined(IP_ADD_SOURCE_MEMBERSHIP)
+#ifndef __GLIBC__
 struct ip_mreq_source {
   struct  in_addr imr_multiaddr;  /* IP multicast address of group */
   struct  in_addr imr_sourceaddr; /* IP address of source */
   struct  in_addr imr_interface;  /* local IP address of interface */
 };
 #endif
+#endif
 
 #ifndef IP_ADD_SOURCE_MEMBERSHIP
 
