public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jerry Cooperstein <coop@axian.com>
To: linux-kernel@vger.kernel.org
Subject: Re: no version magic, tainting kernel.
Date: Mon, 27 Jan 2003 10:52:28 -0800	[thread overview]
Message-ID: <20030127185228.GA8820@p3.attbi.com> (raw)
In-Reply-To: <200301231459.22789.schlicht@uni-mannheim.de>

The solution

make -C KERNEL_SOURCE SUBDIRS=$PWD modules

is fine, but you have to have a Makefile in the current directory,
and that Makefile needs a somewhat different form for 2.4 and
2.5 kernels.  Here is a quick and dirty script for generating
a quick boilerplate for the sources in that directory.  Straightforward
to customize and extend etc.  (You may have to change some whitespace
to TABS for make...)

======================================================================
 Jerry Cooperstein,  Senior Consultant,  <coop@axian.com>
 Axian, Inc., Software Consulting and Training
 4800 SW Griffith Dr., Ste. 202,  Beaverton, OR  97005 USA
 http://www.axian.com/               
======================================================================

#!/bin/bash

# script for generating external Makefile for kernel modules
# Jerry Cooperstein, Axian Inc 2003_01_27
# Too trivial to GPL; use as desired.

# do either "makeit"; assumes kernel source at /usr/src/linux-`uname -r`
#    or     "makeit /usr/src/linux-2.5.59 or makeit /usr/src/linux-2.4.20" etc.

# Should work on all 2.4, 2.5 kernels.
# assumes all .c files in current directory are modules

if [ "$1" == "" ] ; then
    KROOT=/usr/src/linux-`uname -r`
else
    KROOT="$1"
fi

if [ `echo $KROOT | grep 2.5` ] ; then
    VERSION=2.5
else
    VERSION=2.4
fi

OBJS=""
for names in *.c ; do 
    OBJS=$OBJS" `basename $names .c`.o"
done

PHONYS="$OBJS"

rm -f Makefile

cat <<EOF > Makefile
obj-m += $OBJS
KROOT=$KROOT
all: mmodules
EOF

if [ $VERSION == 2.5 ] ; then
CLEANSTUFF="*.o *.ko .*cmd"

cat <<EOF >> Makefile
PHONYS=$PHONYS
.PHONY:	 \$(PHONYS) clean
EOF

else

CLEANSTUFF="*.o .*flags"

cat <<EOF >> Makefile
TOPDIR=\$(KROOT)
include \$(TOPDIR)/Rules.make
.PHONY:	 clean
EOF
fi

cat <<EOF >> Makefile
mmodules:
	\$(MAKE) -C \$(KROOT) SUBDIRS=$PWD modules
clean:
	rm $CLEANSTUFF
EOF

  parent reply	other threads:[~2003-01-27 18:43 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-01-23 13:59 no version magic, tainting kernel Thomas Schlichter
2003-01-23 16:29 ` Randy.Dunlap
2003-01-23 16:52 ` Sam Ravnborg
2003-01-23 17:32   ` Thomas Schlichter
2003-01-23 18:22     ` Sam Ravnborg
2003-01-23 19:35       ` Mark Fasheh
2003-01-26 13:29         ` Christian Zander
2003-01-26 13:33           ` Keith Owens
2003-01-26 18:02             ` Kai Germaschewski
2003-01-26 17:51           ` Kai Germaschewski
2003-01-26 21:57             ` Christian Zander
2003-01-26 21:46               ` Kai Germaschewski
2003-01-26 23:12                 ` Christian Zander
2003-01-26 22:55                   ` David Woodhouse
2003-01-27  0:07                     ` Christian Zander
2003-01-26 23:16                       ` David Woodhouse
2003-01-27  0:24                         ` Christian Zander
2003-01-27 16:25                         ` Kai Germaschewski
2003-01-27 16:29                           ` David Woodhouse
2003-01-27 16:39                             ` Kai Germaschewski
2003-01-27  6:17                 ` Petr Vandrovec
2003-01-27  9:02                   ` David Woodhouse
2003-01-27  9:24                     ` Petr Vandrovec
2003-01-27 17:59                 ` Joel Becker
2003-01-27 18:31                   ` Kai Germaschewski
2003-01-27 22:15                     ` Joel Becker
2003-01-27 23:08                       ` Kai Germaschewski
2003-01-27 23:37                         ` Joel Becker
2003-01-28 15:43                       ` David Woodhouse
2003-01-28 17:03                         ` Joel Becker
2003-01-26 22:23               ` Christian Zander
2003-01-26 17:43         ` Kai Germaschewski
2003-01-26 22:08           ` Christian Zander
2003-01-26 21:29             ` Sam Ravnborg
2003-01-26 23:03               ` Christian Zander
2003-01-26 21:40             ` David Woodhouse
2003-01-26 23:28               ` Christian Zander
2003-01-26 22:46                 ` David Woodhouse
2003-01-26 23:56                   ` Christian Zander
2003-01-26 23:04                     ` David Woodhouse
2003-01-28  1:58         ` Rusty Russell
2003-01-28 19:10           ` Mark Fasheh
2003-01-28 19:17             ` Kai Germaschewski
2003-01-27 18:52 ` Jerry Cooperstein [this message]
2003-01-27 19:12   ` Sam Ravnborg
2003-01-27 19:35     ` Jerry Cooperstein
2003-01-27 19:54   ` Gerd Knorr

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030127185228.GA8820@p3.attbi.com \
    --to=coop@axian.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox