On Sat, Apr 16, 2005 at 09:17:04PM +0200, Agustin Martin wrote:
> On Fri, Apr 15, 2005 at 09:52:23PM +0200, Hadmut Danisch wrote:
> > 
> > >Did you select any drivers?
> > 
> > sure, the usb driver.
> 
> That was not in the debconf entry I pointed out,
> 
> I guess you added it (atiusb) manually, but unfortunately that entry
> is known to be buggy in the Makefile
> 
> http://bugs.debian.org/300989
> 
> Can you please try the patch I proposed to lirc maintainers in that
> bug www page?
> 
> That Makefile is what should go into /usr/src/modules/lirc/Makefile

Hi, Hadmut

I finally found the same problem when recompiling my kernel modules.

I have been playing with the Makefile and it seems to now be dealing with
that problem.

I am attaching the modifled Makefile in case you want to give it a try. It
should go as /usr/src/modules/lirc/Makefile. As usual, take with care. If
you try it please report results to this bug report address.

Amaya, There are some other modifications in the Makefile, that should close
#300989, #303663, and #304609 bugs, besides this #304388. I am attaching the
full Makefile, since it is not that bigger than diff -u and this way is
easier to evaluate the changes.

Cheers,

-- 
Agustin
include /etc/lirc/lirc-modules-source.conf

# An space should be left at the end of each CFLAGS variable for the
# sanity-check to work.
SERIAL_CFLAGS   := $(subst ",,$(LIRC_SERIAL_CFLAGS) \
                                -DLIRC_PORT=$(LIRC_SERIAL_PORT) \
                                -DLIRC_IRQ=$(LIRC_SERIAL_IRQ) ) 
SIR_CFLAGS      := $(subst ",,$(LIRC_SIR_CFLAGS) \
                                -DLIRC_PORT=$(LIRC_SIR_PORT) \
                                -DLIRC_IRQ=$(LIRC_SIR_IRQ) )
PARALLEL_CFLAGS := $(subst ",,-DLIRC_PORT=$(LIRC_PARALLEL_PORT) \
                                -DLIRC_TIMER=$(LIRC_PARALLEL_TIMER) \
                                -DLIRC_IRQ=$(LIRC_PARALLEL_IRQ) )

i2c_MAKEFLAGS="-e"
gpio_MAKEFLAGS="-e"
it87_MAKEFLAGS="-e"
bt829_MAKEFLAGS="-e"

KSRC=/usr/src/linux/$(shell uname -r)/build
KERNEL_LOCATION = $(KSRC)
CC = gcc -D__KERNEL__ -I $(KSRC)/include
CFLAGS= -O2 -g -Wall
DEFS=-DHAVE_CONFIG_H -I. -I../..

KVERS=$(shell sed -n -e '/UTS_RELEASE/s/^[^"]*"\([^"]*\)".*$\/\1/p' 
$(KSRC)/include/linux/version.h)
KPATCHLEVEL=$(shell echo $(KVERS) | sed -n -e 's/^[0-9]*\.\([0-9]*\)\..*/\1/p')

KEXT=o
ifeq ($(KPATCHLEVEL),6)
KEXT=ko
endif


export KERNEL_LOCATION CC

alldrivers = atiusb i2c gpio it87 bt829 serial parallel sir
comma     := ,

all: $(alldrivers)

test:
        @echo '$(LIRC_SERIAL_IRQ)'
        @echo $(LIRC_SIR_IRQ)
        @echo $(LIRC_PARALLEL_IRQ)
        @echo $(SERIAL_CFLAGS)
        @echo $(SIR_CFLAGS)
        @echo $(PARALLEL_CFLAGS)

UNCONFIGURED: #Do nothing if the user didn't configure which drivers to build

#debconf: $(subst ", ,$(LIRC_MODULES:,=))
debconf: $(subst $(comma), ,$(subst ", ,$(LIRC_MODULES)))

modules:
        mkdir modules

sanity-check:
        @if \
                expr "$(DEFS)" : '.* -DLIRC_IRQ= ' > /dev/null\
                || expr "$(DEFS)" : '.* -DLIRC_PORT= ' > /dev/null \
                || expr "$(DEFS)" : '.* -DLIRC_TIMER= '> /dev/null \
                || expr "$(DEFS)" : '.*UNCONFIGURED'> /dev/null;\
        then \
                echo ;\
                echo "##########################";\
                echo "## CONFIGURATION ERROR: ##";\
                echo "##########################";\
                echo ;\
                echo "You should reconfigure lirc-modules-source and make";\
                echo "sure you don't leave blank any one of IRQ, IO Port or ";\
                echo "Timer (parallel only)";\
                echo ;\
                echo "Hint1: use \"dpkg-reconfigure lirc-modules-source\"";\
                echo "Hint2: If you selected \"automagical\" configuration of";\
                echo "  kernel modules you should probably reconfigure lirc";\
                echo "  instead.";\
                echo "Hint3: you may instead edit 
/etc/lirc/lirc-modules-source.conf";\
                exit 1;\
        fi

lirc_dev: modules sanity-check
        $(MAKE) -e -C drivers SUBDIRS="lirc_dev"
        mv drivers/lirc_dev/lirc_dev.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_dev.$(KEXT).KVERS

atiusb: modules sanity-check lirc_dev
        $(MAKE) -e -C drivers SUBDIRS="lirc_atiusb"
        mv drivers/lirc_atiusb/lirc_atiusb.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_atiusb.$(KEXT).KVERS

i2c: modules sanity-check lirc_dev
        $(MAKE) -e -C drivers SUBDIRS="lirc_i2c"
        mv drivers/lirc_i2c/lirc_i2c.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_i2c.$(KEXT).KVERS

gpio: modules sanity-check lirc_dev
        $(MAKE) -e -C drivers SUBDIRS="lirc_gpio"
        mv drivers/lirc_gpio/lirc_gpio.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_gpio.$(KEXT).KVERS

it87: modules sanity-check
        $(MAKE) -e -C drivers SUBDIRS="lirc_it87"
        mv drivers/lirc_it87/lirc_it87.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_it87.$(KEXT).KVERS

bt829: modules sanity-check
        $(MAKE) -e -C drivers SUBDIRS="lirc_bt829"
        mv drivers/lirc_bt829/lirc_bt829.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_bt829.$(KEXT).KVERS

serial: DEFS += $(SERIAL_CFLAGS)
serial: modules sanity-check lirc_dev
        $(MAKE) -C drivers SUBDIRS="lirc_serial" DEFS="$(DEFS)"
        mv drivers/lirc_serial/lirc_serial.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_serial.$(KEXT).KVERS

parallel: DEFS += $(PARALLEL_CFLAGS)
parallel: modules sanity-check
        $(MAKE) -C drivers SUBDIRS="lirc_parallel" DEFS="$(DEFS)"
        mv drivers/lirc_parallel/lirc_parallel.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_parallel.$(KEXT).KVERS

sir: DEFS += $(SIR_CFLAGS)
sir: modules sanity-check lirc_dev
        $(MAKE) -C drivers SUBDIRS="lirc_sir" DEFS="$(DEFS)"
        mv drivers/lirc_sir/lirc_sir.$(KEXT) modules
        @echo $(KVERS) $(KSRC) > modules/lirc_sir.$(KEXT).KVERS

install:
        @for file in modules/*.$(KEXT); \
        do \
                kvers=`cut -d" " -f1 $$file.KVERS` && \
                ksrc=`cut -d" " -f2 $$file.KVERS` && \
                dir="$(prefix)/lib/modules/$$kvers/misc/" && \
                ( [ -d $$dir ] || mkdir -p $$dir ) && \
                cp -v $$file $$dir ; \
        done
depmod:
        @for file in modules/*.$(KEXT); \
        do \
                kvers=`cut -d" " -f1 $$file.KVERS` && \
                ksrc=`cut -d" " -f2 $$file.KVERS` && \
                dir="$(prefix)/lib/modules/$$kvers/misc/" && \
                if [ -f $$ksrc/System.map ];then \
                        /sbin/depmod -r -b $(prefix)/ -a $$kvers \
                                        -F $$ksrc/System.map ; \
                elif [ -f /boot/System.map-$$kvers ];then \
                        /sbin/depmod -r -b $(prefix)/ -a $$kvers \
                                        -F /boot/System.map-$$kvers; \
                else \
                        /sbin/depmod -a ;\
                fi ;\
        done

clean:
        $(MAKE) clean -C drivers SUBDIRS="$(addprefix lirc_,$(alldrivers)) 
lirc_dev"
        rm -rf modules

Reply via email to