[Pkg-lirc-maint] Bug#872074: liblirc-dev: missing #include <lirc/config.h>

Adrian Bunk bunk at debian.org
Mon Aug 14 11:17:32 UTC 2017


(The Debian BTS does not automatically Cc the submitter.)

On Mon, Aug 14, 2017 at 09:24:03AM +0200, Alec Leamas wrote:
> On Mon, 14 Aug 2017 10:03:15 +0300 Adrian Bunk <bunk at debian.org> wrote:
> > Package: liblirc-dev
> > Version: 0.10.0-1
> > Severity: serious
> > Control: affects -1 src:libirman
> >
> > https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/libirman.html
> >
> > ...
> > In file included from /usr/include/lirc/drv_enum.h:27:0,
> > from /usr/include/lirc_driver.h:16,
> > from lirc-plugin/irman.c:30:
> > /usr/include/lirc/driver.h:29:10: fatal error: media/lirc.h: No such file
> or directory
> > #include "media/lirc.h"
> > ^~~~~~~~~~~~~~
> 
> 
> Thanks for swift report. Seems like
> https://sourceforge.net/p/lirc/tickets/282/, supposed to be fixed but
> obviously not.
>...

The problem is not about the include path, and the discussion in this 
ticket looks incorrect to me.

/usr/include/lirc/driver.h and /usr/include/lirc/ir_remote_types.h 
both contain:

#ifdef HAVE_KERNEL_LIRC_H
#include <linux/lirc.h>
#else
#include "media/lirc.h"
#endif

This is not supposed to try to include media/lirc.h on Linux.

These headers should #include <lirc/config.h> since they require
the define.


On a more general note, placing the whole config.h under /usr/include
is not correct, a small subset of LIRC_ prefixed variables would be
more appropriate:

lirc-using software that uses variables like PACKAGE_NAME or 
PACKAGE_VERSION from it's own build might currently end up
using the lirc defines.


> --alec

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed



More information about the Pkg-lirc-maint mailing list