cloc3 wrote:- Code: Select all
asrock ~ # grep newinitd /var/lib/layman/cloc3Ovl/app-misc/lirc/lirc-0.9.0_pre1.ebuild
newinitd "${FILESDIR}"/lircd-0.8.6 lircd
newinitd "${FILESDIR}"/lircmd lircmd
newinitd "${FILESDIR}"/irexec-initd-0.8.6-r2 irexec
It's the same as yours on my machine:
- Code: Select all
$ grep newinitd /usr/local/portage/app-misc/lirc/lirc-0.9.0_pre1.ebuild
newinitd "${FILESDIR}"/lircd-0.8.6 lircd
newinitd "${FILESDIR}"/lircmd lircmd
newinitd "${FILESDIR}"/irexec-initd-0.8.6-r2 irexec
cloc3 wrote:if you have not the lircd init script you should have this warning in your ebuild log:
- Code: Select all
!!! newinitd: /var/lib/layman/cloc3Ovl/app-misc/lirc/files/lircd-0.8.6 does not exist
Here's my ebuild log (I just merged lirc-0.9.0_pre1 again now):
- Code: Select all
INFO: setup
Package: app-misc/lirc-0.9.0_pre1
Repository: local_overlay
USE: X elibc_glibc kernel_linux lirc_devices_userspace userland_GNU x86
FEATURES: preserve-libs sandbox
WARN: setup
If your LIRC device requires modules, you'll need MODULE_UNLOAD
support in your kernel.
INFO: setup
Determining the location of the kernel source code
Found kernel source directory:
/usr/src/linux
Found kernel object directory:
/lib/modules/2.6.37-sabayon/build
Found sources for kernel version:
2.6.37-sabayon
LOG: setup
Compiling support for device userspace
INFO: setup
lirc-configure-opts: --with-driver=userspace
LOG: setup
Setting default lirc-device to /dev/lirc0
INFO: unpack
Applying lirc-0.8.4-portaudio_check.patch ...
WARN: unpack
Disabling lirc_gpio driver as it does no longer work Kernel 2.6.22+
INFO: unpack
Running eautoreconf in '/var/tmp/portage/app-misc/lirc-0.9.0_pre1/work/lirc-0.9.0-pre1' ...
Running aclocal ...
Running libtoolize --copy --force --install --automake ...
Running aclocal ...
Running autoconf ...
Running autoheader ...
Running automake --add-missing --copy ...
Running elibtoolize in: lirc-0.9.0-pre1/
Applying portage-2.2.patch ...
Applying sed-1.5.6.patch ...
Applying as-needed-2.2.6.patch ...
INFO: compile
Preparing lirc module
WARN: postinst
The lirc_gpio driver will not work with Kernels 2.6.22+
You need to switch over to /dev/input/event? if you need gpio
This device can than then be used via lirc's dev/input driver.
The new default location for lircd.conf is inside of
/etc/lirc/ directory
As you can see above, there is no error message saying "app-misc/lirc/files/lircd-0.8.6 does not exist". lirc-0.9.0_pre1 builds without apparent problems.
By the way, compiling LIRC with --with-driver=userspace is hard-coded in the lirc-0.9.0_pre1.ebuild if the kernel is 2.6.36 and later, so my having LIRC_DEVICES="userspace" in /etc/make.conf is redundant and does no harm.
cloc3 wrote:when I prepare a local overlay, I always copy the original $FILEDIR from portage. that's may it be the difference betwen us.
I've been merging packages in a local overlay using /usr/local/portage/<category>/<package>/ for several years, as recommended in the official Gentoo documentation (
5. Diverting from the Official Tree) so I don't think this is the cause of my problem.
The stock SL 2.6.37 kernel has the following enabled:
- Code: Select all
$ cat /usr/src/linux/.config | grep NUV
CONFIG_IR_NUVOTON=m
$ cat /usr/src/linux/.config | grep _IR_
CONFIG_IR_CORE=m
CONFIG_IR_NEC_DECODER=m
CONFIG_IR_RC5_DECODER=m
CONFIG_IR_RC6_DECODER=m
CONFIG_IR_JVC_DECODER=m
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_RC5_SZ_DECODER=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_ENE=m
CONFIG_IR_IMON=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_STREAMZAP=m
CONFIG_VIDEO_IR_I2C=m
$ cat /usr/src/linux/.config | grep LIRC
CONFIG_LIRC=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_BT829=m
CONFIG_LIRC_I2C=m
CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_IMON=m
CONFIG_LIRC_IT87=m
CONFIG_LIRC_ITE8709=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SASEM=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
CONFIG_LIRC_SIR=m
CONFIG_LIRC_TTUSBIR=m
CONFIG_LIRC_ZILOG=m
From the above one can see it has IR to LIRC bridge configured as a module, and Nuvoton w836x7hg Consumer Infrared Transceiver configured as a module.
But, as I mentioned in my post on 6 March, merging lirc-0.9.0_pre1 does not create /etc/init.d/lircd and /etc/conf.d/lircd. In fact, it deletes them if they exist (e.g. if I merge lirc-0.8.7, which does create /etc/init.d/lircd and /etc/conf.d/lircd, before I merge lirc-0.9.0_pre1).
If I do not bother to unload the uneedeed ir-core modules for MCE, Sony, JVC and NEC IR devices then lsmod output looks like the following:
- Code: Select all
$ lsmod | grep lirc
ir_lirc_codec 2716 0
lirc_dev 6598 1 ir_lirc_codec
ir_core 10387 9 ir_lirc_codec,rc_rc6_mce,ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,ir_rc5_decoder,ir_nec_decoder,nuvoton_cir
If I unload the superflous modules (see lsmod output in my post of 5 March) the functionality does not change. The only thing I must not remove is the ir_rc6_decoder module, as then the remote ceases to work completely. I can even remove the nuvoton_cir module, which is not surprising because the lircd is not present and it is the IR keyboard driver rc6 that is detecting the remote.
But I cannot see why merging lirc-0.9.0_pre1 won't create the daemon and its config file. Very strange.