Bug#878705: opencv: FTBFS on x32: sysctl(.h) unsupported
Aaron M. Ucko
ucko at debian.org
Mon Oct 16 14:41:56 UTC 2017
Mattia Rizzolo <mattia at debian.org> writes:
> Hi Aaron,
Hi, Mattia.
Thanks for the quick response! I can't readily test a fix[1], but
suspect the problem is the second half of
> #elif defined __APPLE__ || !defined __GNU__
which results in trying to #include <sys/sysctl.h> on a wide range of
architectures. (Only the Hurd predefines __GNU__.) Seeing as cmake
detects that <sys/sysctl.h> is unusable on x32, I'd suggest merging and
simplifying the second and third branches to something along the lines of
#if defined __linux__ || defined __APPLE__ || defined __GLIBC__
#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#if defined __ANDROID__
#include <sys/sysconf.h>
#elif defined HAVE_SYS_SYSCTL_H
#include <sys/sysctl.h>
#endif
#endif
[1] I'm not a porter or buildd maintainer, just a regular DD who cares
about portability and checks buildd logs from anything building
binary packages newly showing up on amd64 and/or i386.
--
Aaron M. Ucko, KB1CJC (amu at alum.mit.edu, ucko at debian.org)
http://www.mit.edu/~amu/ | http://stuff.mit.edu/cgi/finger/?amu@monk.mit.edu
More information about the debian-science-maintainers
mailing list