[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#285856: kernel-headers-2.6.9-1-686: localversion is needed for proper installation of drivers



Package: kernel-headers-2.6.9-1-686
Version: 2.6.9-3
Severity: important
Tags: sid



-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.9-1-686
Locale: LANG=C, LC_CTYPE=C

Versions of packages kernel-headers-2.6.9-1-686 depends on:
ii  coreutils [fileutils]         5.2.1-2    The GNU core utilities
ii  fileutils                     5.0.91-2   The GNU file management utilities 
ii  kernel-headers-2.6.9-1        2.6.9-3    Header files related to Linux kern

-- no debconf information

The file:  kernel-headers-2.6.9-1-686/.extraversion 
file should be renamed or copied to:  
            kernel-headers-2.6.9-1-686/localversion

matching the 2.6.8 --> 2.6.9 changes in   EXTRAVERSION/localversion usage
in the dependent package kernel-headers-2.6.n-1/Makefile 
In the 2.6.8-1 Makefile, there is
---------
ifeq ($(EXTRAVERSION),)
EXTRAVERSION := $(shell [ ! -f .extraversion ] || cat .extraversion)
endif
KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)

with change in the  kernel-headers-2.6.9-1/Makefile to
----------
ifeq ($(objtree),$(srctree))
localversion-files := $(wildcard $(srctree)/localversion*)
else
localversion-files := $(wildcard $(objtree)/localversion*
$(srctree)/localversion*)
endif
LOCALVERSION = $(subst $(space),, \
               $(shell cat /dev/null $(localversion-files)) \
               $(subst ",,$(CONFIG_LOCALVERSION)))
KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)$(LOCALVERSION)

The standard "install" command is faulted by the lack of 
  kernel-headers-2.6.9-1-686/localversion
For example, as used in our Lucent modem support
package at http://ltmodem.heby.de, the ltmodem-8.31a11.tar.gz  
The Makefile.2.6 installs compiled drivers through
make install:
     make $(EXTMOD_SWITCH)=`pwd` -C $(KERNEL_DIR) INSTALL_MOD_PATH=$(ROOTDIR) modules_install

Through the kernel-headers-2.6.9-1-686/Makefile -->  kernel-headers-2.6.9-1/Makefile, 
there is read
KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)$(LOCALVERSION)

 make install:
    in the presence of kernel-headers-2.6.9-1-686/localversion
properly seats drivers to:
/lib
  `-- modules
      `-- 2.6.9-1-686
         `-- extra
            |-- lt_modem.ko
            `-- lt_serial.ko

But in the ABSENSE of kernel-headers-2.6.9-1-686/localversion, only
KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)
is non-empty and there is a useless seating at:
/lib
 `-- modules
     `-- 2.6.9
         `-- extra
            |-- lt_modem.ko
            `-- lt_serial.ko

Presumably, all the kernel-headers-2.6.9-1-* packages require this localversion fix,
and all subsequent kernel-headers-2.6.n-m-* releases.

Credit to  Alexei Chentsov, chentsov@univ.kiev.ua 
for relating the fix to  me.

MarvStodolsky
ltmodem co-maintainer



Reply to: