retitle 346221 linux-headers-2.6.15-1-powerpc: arch/powerpc is missing (or Makefile broken) reassign 346221 linux-headers-2.6.15-1-powerpc thanks
Hi, On Sat, Jan 07, 2006 at 11:01:13AM +0100, Richard Bonichon wrote: > > > > Richard Bonichon a écrit : > > >Package: rt2500-source > > >Version: 1.1.0+cvs20051217-1 > > >Severity: serious > > >Justification: no longer builds from source > > > > > > > > >The make command to build from the source is looking for arch/powerpc > > >directory that does not exist in the current 2.6.15 kernel (named ppc). > > > > The make command in rt2500-source simply calls the Makefile from the > > kernel tree, so I think the bug is on the kernel side. Against which > > sources are you trying to build the rt2500 module? the ones from > > kernel.org, the debian package linux-source-2.6.15, one of the > > linux-headers-2.6.15-* packages? > > > I am using the linux-headers-2.6.15-1-powerpc debian package > I got it to work by copying the arch/ppc directory to arch/powerpc > (this is not really what I would call elegant) I have looked at the Makefile from the linux tree, ARCH is determined as follow: SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \ -e s/arm.*/arm/ -e s/sa110/arm/ \ -e s/s390x/s390/ -e s/parisc64/parisc/ \ -e s/ppc.*/powerpc/ ) and then later ARCH ?= $(SUBARCH) as "uname -m" returns ppc on powerpc, the directory used is powerpc, which doesn't exists... Note that on the upstream linux sources, the SUBARCH detection is different: -e s/ppc64/powerpc/ ) So the problem seems to be in linux-headers-2.6.15-1-powerpc. I am reassign this bug there. > > >Remark: > > >Building from source otherwise works, just not using the debian/rules > > >method, which is also looking for a Module directory which is > > >non-existant in the rt2500-source package but can be found in the source > > >package downloaded from the rt2xxx open source driver sourceforge site. > > What do you call the "debian/rules method?". The Module dir is actually > > the root of the rt2500-source because you don't need the other stuff to > > build the kernel module. > > There are mainly two ways to build the binary as far as I know. Using > the debian-provided commands in the debian subdirectory of the source to > build a .deb package then install it or > using directly what the source provides, in this case a simple Makefile > to compile and install the binary. Have a look at /usr/share/doc/rt2500-source/README.Debian to see the list of possibilities to build the module. > The second possibilty just works and the first one fails with the > following message using debian/rules binary > dh_testdir > # Copy most of the source tree into the temp directory and clean it > cd /usr/src/modules/rt2500/Module \ > && find . -path ./debian/\* -type d -prune -o -print \ > | egrep -v 'RPM|CVS|debian' \ > | cpio -admp > /usr/src/modules/rt2500/debian/build/usr/src/modules/rt2500 > /bin/sh: line 0: cd: > /usr/src/modules/rt2500/Module: > No such file or > directory > make: *** > [build-indep-stamp] > Error 1 > > This is not a supported way to build a .deb. There is a special target called "binary-modules" to build the .deb. So calling: debian/rules binary-modules should work. > This above-mentioned Module directory exists in the sourceforge source but > not in the debian version and this causes the build to stop. This directory is also present in the Debian source package, but is not need in the rt2500-source binary package. Bye, Aurelien -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `- people.debian.org/~aurel32 | www.aurel32.net -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]