On Wed, Dec 24, 2014 at 03:07:00AM +0000, Mikolaj Kucharski wrote:
> On Sat, Dec 20, 2014 at 11:51:24PM +0000, ni...@openbsd.org wrote:
> > amd64 regression test failed...
> 
> Thank you for your report!
> 
> Upstream switched from ExtUtils::MakeMaker to Module::Build and that
> resulted in important CFLAGs missing during compilation.
> 
> I've opened issue on GitHub about this.
> 
> Any comments about below patch?
> 
> For me regress passes in i386 and amd64.
> 

WANTLIB seems not needed any more, however not sure about SHARED_ONLY,
as make port-lib-depends-check complains about:

Extra:  perl.17


Index: Makefile
===================================================================
RCS file: /cvs/ports/net/p5-IO-Interface/Makefile,v
retrieving revision 1.19
diff -u -r1.19 Makefile
--- Makefile    14 Jun 2014 23:25:42 -0000      1.19
+++ Makefile    24 Dec 2014 04:54:35 -0000
@@ -1,19 +1,23 @@
 # $OpenBSD: Makefile,v 1.19 2014/06/14 23:25:42 sthen Exp $
 
-SHARED_ONLY=   Yes
+SHARED_ONLY =  Yes
 
-COMMENT=       module for access to network card configuration information
+COMMENT =      module for access to network card configuration information
 
-MODULES=       cpan
-DISTNAME=      IO-Interface-1.06
-REVISION=      1
-CATEGORIES=    net
+MODULES =      cpan
+DISTNAME =     IO-Interface-1.09
+CATEGORIES =   net
 
-MAINTAINER=    Kevin Lo <ke...@openbsd.org>
+HOMEPAGE =     https://github.com/lstein/LibIO-Interface-Perl
+
+MAINTAINER =   Mikolaj Kucharski <miko...@kucharski.name>
 
 # Artistic/GPL
-PERMIT_PACKAGE_CDROM=   Yes
+PERMIT_PACKAGE_CDROM = Yes
+
+CONFIGURE_STYLE =      modbuild
 
-WANTLIB += c
+# upstream switched to modbuild, commit c4de691
+CFLAGS =       -D__USE_BSD -DSIOCGIFCONF -DHAVE_SOCKADDR_DL_STRUCT 
-DUSE_GETIFADDRS
 
 .include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/net/p5-IO-Interface/distinfo,v
retrieving revision 1.7
diff -u -r1.7 distinfo
--- distinfo    25 Jul 2011 14:22:42 -0000      1.7
+++ distinfo    24 Dec 2014 04:54:35 -0000
@@ -1,5 +1,2 @@
-MD5 (IO-Interface-1.06.tar.gz) = fXfQ8j7n9XcQn8Xw5n4KSw==
-RMD160 (IO-Interface-1.06.tar.gz) = 8Go0QDlu7qfLCZJ3eFcb2TzxA0Q=
-SHA1 (IO-Interface-1.06.tar.gz) = 13XoQDSHyjrYavnbOYStGbDAyZc=
-SHA256 (IO-Interface-1.06.tar.gz) = 
bAe8nOvOwuxYpuaWmhTI1PSVmGkzLVPqs7ZQeVQc33c=
-SIZE (IO-Interface-1.06.tar.gz) = 10339
+SHA256 (IO-Interface-1.09.tar.gz) = 
5j6BxS6x4OYOwtmD9VUtJJPhFxeZJclnV/I8S9n6cTo=
+SIZE (IO-Interface-1.09.tar.gz) = 16414
Index: patches/patch-Interface_xs
===================================================================
RCS file: patches/patch-Interface_xs
diff -N patches/patch-Interface_xs
--- patches/patch-Interface_xs  30 Aug 2010 03:48:17 -0000      1.2
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,75 +0,0 @@
-
-NetBSD and OpenBSD don't set the address family on the "netmask" address.
-Work around that by just setting the address family field after ioctl() and
-before checking it.
-
-if_hwaddr() was broken, code looping all interfaces was causing segmentation
-fault on freeifaddrs()
-
-$OpenBSD: patch-Interface_xs,v 1.2 2010/08/30 03:48:17 kevlo Exp $
---- Interface.xs.orig  Fri Jun  6 16:51:42 2008
-+++ Interface.xs       Sun Aug 29 01:53:48 2010
-@@ -2,6 +2,9 @@
- #include "perl.h"
- #include "XSUB.h"
- 
-+#include <stdio.h>
-+#include <string.h>
-+
- /* socket definitions */
- #include <sys/types.h>
- #include <sys/socket.h>
-@@ -511,6 +514,9 @@ if_netmask(sock, name, ...)
-         operation = SIOCGIFNETMASK;
-      }
-      if (!Ioctl(sock,operation,&ifr)) XSRETURN_UNDEF;
-+#if defined(__NetBSD__) || defined(__OpenBSD__)
-+     ifr.ifr_addr.sa_family = AF_INET;
-+#endif
-      if (ifr.ifr_addr.sa_family != AF_INET) croak ("Address is not in the 
AF_INET family.\n");
-      RETVAL = inet_ntoa(((struct sockaddr_in*) &ifr.ifr_addr)->sin_addr);
- #endif
-@@ -566,7 +572,7 @@ if_hwaddr(sock, name, ...)
-      IOCTL_CMD_T    operation;
-      struct ifreq   ifr;
- #if (defined(USE_GETIFADDRS) && defined(HAVE_SOCKADDR_DL_STRUCT))
--     struct ifaddrs* ifap = NULL;
-+     struct ifaddrs *ifap, *ifa;
-      struct sockaddr_dl* sdl;
-      sa_family_t  family;
-      char *sdlname, *haddr, *s;
-@@ -582,20 +588,17 @@ if_hwaddr(sock, name, ...)
- #if (defined(USE_GETIFADDRS) && defined(HAVE_SOCKADDR_DL_STRUCT))
-      getifaddrs(&ifap);
- 
--     while(1) {
--       if (ifap == NULL) break;
--       if (strncmp(name, ifap -> ifa_name, IFNAMSIZ) == 0) {
--         family = ifap -> ifa_addr -> sa_family;
-+     for (ifa = ifap; ifa; ifa = ifa->ifa_next) {
-+       if (strncmp(name, ifa->ifa_name, IFNAMSIZ) == 0) {
-+         family = ifa->ifa_addr->sa_family;
-          if (family == AF_LINK) {
--           sdl = (struct sockaddr_dl *) ifap->ifa_addr;
-+           sdl = (struct sockaddr_dl *) ifa->ifa_addr;
-            haddr = sdl->sdl_data + sdl->sdl_nlen;
-            hlen = sdl->sdl_alen;
-            break;
-          }
-        }
--       ifap = ifap -> ifa_next;
-      } 
--     freeifaddrs(ifap);
- 
-      s = hwaddr; 
-      s[0] = '\0';
-@@ -608,6 +611,9 @@ if_hwaddr(sock, name, ...)
-          s += len;
-        }
-      }
-+
-+     freeifaddrs(ifap);
-+
-      RETVAL = hwaddr;
- #elif (defined(HAS_IOCTL) && defined(SIOCGIFHWADDR))
-      bzero((void*)&ifr,sizeof(struct ifreq));
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/net/p5-IO-Interface/pkg/PLIST,v
retrieving revision 1.5
diff -u -r1.5 PLIST
--- pkg/PLIST   14 Jun 2014 23:25:42 -0000      1.5
+++ pkg/PLIST   24 Dec 2014 04:54:35 -0000
@@ -9,6 +9,5 @@
 ${P5ARCH}/auto/IO/Interface/
 @comment ${P5ARCH}/auto/IO/Interface/Interface.bs
 ${P5ARCH}/auto/IO/Interface/Interface.so
-${P5ARCH}/auto/IO/Interface/autosplit.ix
 @man man/man3p/IO::Interface.3p
 @man man/man3p/IO::Interface::Simple.3p


-- 
best regards
q#

Reply via email to