On Mon, Feb 22, 2016 at 9:37 AM Patrick Matthäi <pmatth...@debian.org> wrote:
> Am 22.02.2016 um 03:09 schrieb Steven Chamberlain: > > tags 815501 + patch > > user debian-...@lists.debian.org > > usertags 815501 + kfreebsd > > thanks > > > > Hi, > > > > Andreas Beckmann wrote: > >> starting with version 6 mlt FTBFS on kfreebsd-i386 and kfreebsd-amd64: > >> > https://buildd.debian.org/status/fetch.php?pkg=mlt&arch=kfreebsd-amd64&ver=6.0.0-2&stamp=1455825880 > >> > >> [...] > >> cc -g -O2 -fstack-protector-strong -Wformat -Werror=format-security > -DARCH_X86_64 -Wall -DPIC -O2 -pipe -fno-tree-dominator-opts > -fno-tree-pre -ffast-math -g -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -fPIC -pthread -DARCH_X86_64 -Wall -DPIC -O2 -pipe > -fno-tree-dominator-opts -fno-tree-pre -ffast-math -g > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC -pthread -I../.. > -DARCH_X86_64 -Wall -DPIC -O2 -pipe -fno-tree-dominator-opts > -fno-tree-pre -ffast-math -g -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -fPIC -pthread -Wdate-time -D_FORTIFY_SOURCE=2 -c -o consumer_cbrts.o > consumer_cbrts.c > >> consumer_cbrts.c: In function 'create_socket': > >> consumer_cbrts.c:583:12: error: variable 'req' has initializer but > incomplete type > >> struct ip_mreqn req = {{0}}; > >> ^ > > > > Unfortunately GNU/kFreeBSD uses a netinet/ip.h provided by GNU libc, > > not the FreeBSD one, so it doesn't have struct ip_mreqn. > > > > Until we have that, this feature can be easily disabled with the > > attached patch, allowing the rest of mlt to build successfully. > > > > Thanks for your explaination. So we know now, that it is not easy > fixable within the mlt source code. > > @Dan: > Would you merge his patch? > > --- a/src/modules/plusgpl/consumer_cbrts.c > +++ b/src/modules/plusgpl/consumer_cbrts.c > @@ -37,7 +37,7 @@ > #endif > #include <strings.h> > // includes for socket IO > -#if (_POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE) && > (_POSIX_TIMERS > 0) > +#if (_POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE) && > (_POSIX_TIMERS > 0) && !defined(__FreeBSD_kernel__) > #define CBRTS_BSD_SOCKETS 1 > #include <sys/types.h> > #include <sys/socket.h> > > > I prefer to merge a different patch I shared previously that excludes GNU kFreeBSD but should still permit FreeBSD. Maybe you overlooked that reply. Here it is again: diff --git a/src/modules/plusgpl/consumer_cbrts.c b/src/modules/plusgpl/consumer_cbrts.c index 634cb56..a69098c 100644 --- a/src/modules/plusgpl/consumer_cbrts.c +++ b/src/modules/plusgpl/consumer_cbrts.c @@ -38,11 +38,14 @@ #include <strings.h> // includes for socket IO #if (_POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE) && (_POSIX_TIMERS > 0) +#if !(defined(__FreeBSD_kernel__) && defined(__GLIBC__)) #define CBRTS_BSD_SOCKETS 1 #include <sys/types.h> #include <sys/socket.h> #include <netdb.h> #include <net/if.h> +#include <netinet/in.h> +#endif #endif #include <sys/time.h> #include <time.h>