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]