From: | gregoa [...] cpan.org |
Subject: | libio-interface-perl: FTBFS on kfreebsd-*: invalid storage class for function 'XS_IO__Interface_if_flags' |
We have the following bug reported to the Debian package of
IO-Interface (https://bugs.debian.org/754691):
It doesn't seem to be a bug in the packaging, so you may want to take
a look. Thanks!
------8<-----------8<-----------8<-----------8<-----------8<-----
Source: libio-interface-perl
Version: 1.07-1
Severity: serious
Justification: FTBFS
Hi,
your package no longer builds on kfreebsd-*:
| cc -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -DVERSION=\"1.07\" -DXS_VERSION=\"1.07\" -fPIC "-I/usr/lib/perl/5.18/CORE" -DUSE_GETIFADDRS -DHAVE_SOCKADDR_DL_STRUCT Interface.c
| In file included from Interface.xs:3:0:
| Interface.c: In function 'XS_IO__Interface_if_hwaddr':
| Interface.c:866:10: error: invalid storage class for function 'XS_IO__Interface_if_flags'
| XS_EUPXS(XS_IO__Interface_if_flags); /* prototype to pass -Wmissing-prototypes */
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:866:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_flags); /* prototype to pass -Wmissing-prototypes */
| ^
| Interface.c:867:10: error: invalid storage class for function 'XS_IO__Interface_if_flags'
| XS_EUPXS(XS_IO__Interface_if_flags)
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:867:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_flags)
| ^
| Interface.c:911:10: error: invalid storage class for function 'XS_IO__Interface_if_mtu'
| XS_EUPXS(XS_IO__Interface_if_mtu); /* prototype to pass -Wmissing-prototypes */
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:911:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_mtu); /* prototype to pass -Wmissing-prototypes */
| ^
| Interface.c:912:10: error: invalid storage class for function 'XS_IO__Interface_if_mtu'
| XS_EUPXS(XS_IO__Interface_if_mtu)
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:912:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_mtu)
| ^
| Interface.c:956:10: error: invalid storage class for function 'XS_IO__Interface_if_metric'
| XS_EUPXS(XS_IO__Interface_if_metric); /* prototype to pass -Wmissing-prototypes */
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:956:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_metric); /* prototype to pass -Wmissing-prototypes */
| ^
| Interface.c:957:10: error: invalid storage class for function 'XS_IO__Interface_if_metric'
| XS_EUPXS(XS_IO__Interface_if_metric)
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:957:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_metric)
| ^
| Interface.c:1001:10: error: invalid storage class for function 'XS_IO__Interface_if_index'
| XS_EUPXS(XS_IO__Interface_if_index); /* prototype to pass -Wmissing-prototypes */
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1001:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_index); /* prototype to pass -Wmissing-prototypes */
| ^
| Interface.c:1002:10: error: invalid storage class for function 'XS_IO__Interface_if_index'
| XS_EUPXS(XS_IO__Interface_if_index)
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1002:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_index)
| ^
| Interface.c:1029:10: error: invalid storage class for function 'XS_IO__Interface_if_indextoname'
| XS_EUPXS(XS_IO__Interface_if_indextoname); /* prototype to pass -Wmissing-prototypes */
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1029:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_indextoname); /* prototype to pass -Wmissing-prototypes */
| ^
| Interface.c:1030:10: error: invalid storage class for function 'XS_IO__Interface_if_indextoname'
| XS_EUPXS(XS_IO__Interface_if_indextoname)
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1030:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface_if_indextoname)
| ^
| Interface.c:1060:10: error: invalid storage class for function 'XS_IO__Interface__if_list'
| XS_EUPXS(XS_IO__Interface__if_list); /* prototype to pass -Wmissing-prototypes */
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1060:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface__if_list); /* prototype to pass -Wmissing-prototypes */
| ^
| Interface.c:1061:10: error: invalid storage class for function 'XS_IO__Interface__if_list'
| XS_EUPXS(XS_IO__Interface__if_list)
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:142:43: note: in definition of macro 'XS_INTERNAL'
| # define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1061:1: note: in expansion of macro 'XS_EUPXS'
| XS_EUPXS(XS_IO__Interface__if_list)
| ^
| Interface.c:1126:13: error: static declaration of 'boot_IO__Interface' follows non-static declaration
| XS_EXTERNAL(boot_IO__Interface)
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:141:36: note: in definition of macro 'XS_EXTERNAL'
| # define XS_EXTERNAL(name) void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1125:13: note: previous declaration of 'boot_IO__Interface' was here
| XS_EXTERNAL(boot_IO__Interface); /* prototype to pass -Wmissing-prototypes */
| ^
| /usr/lib/perl/5.18/CORE/XSUB.h:141:36: note: in definition of macro 'XS_EXTERNAL'
| # define XS_EXTERNAL(name) void name(pTHX_ CV* cv __attribute__unused__)
| ^
| Interface.c:1159:1: error: expected declaration or statement at end of input
| }
| ^
| make[1]: *** [Interface.o] Error 1
Full build logs:
https://buildd.debian.org/status/fetch.php?pkg=libio-interface-perl&arch=kfreebsd-amd64&ver=1.07-1&stamp=1402563744
https://buildd.debian.org/status/fetch.php?pkg=libio-interface-perl&arch=kfreebsd-i386&ver=1.07-1&stamp=1402567343
Mraw,
KiBi.
------8<-----------8<-----------8<-----------8<-----------8<-----
Random facts:
- 1.06 built on those architectures
- when I comment out
$attrs{DEFINE} .= ' -DHAVE_SOCKADDR_DL_STRUCT';
in Makefile.PL, it builds and passes tests
Thanks for considering,
gregor herrmann,
Debian Perl Group