From b2fba6445c94ce2a0d98dfabaf5a822be3fbbdd1 Mon Sep 17 00:00:00 2001 From: short <> Date: Fri, 10 Oct 2003 16:38:53 +0000 Subject: [PATCH] Fixed workaround of Red Hat kernels for 2.6.x Linux kernels. --- kernel/Linux/prepmod.in | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/kernel/Linux/prepmod.in b/kernel/Linux/prepmod.in index 4543aea..4ddf71b 100755 --- a/kernel/Linux/prepmod.in +++ b/kernel/Linux/prepmod.in @@ -186,11 +186,15 @@ my($kernel,$uname_r,$destmodule)=@_; my $config=_readfile "$kernel/.config","optional"; my $autoconf=_readfile "$kernel/include/linux/autoconf.h","optional"; - $cmdline.=" -DMODVERSIONS -include $kernel/include/linux/version.h -include $kernel/include/linux/modversions.h" - if 0 - || $config=~/^CONFIG_MODVERSIONS=y\b/m - || $autoconf=~/^#define CONFIG_MODVERSIONS\b/m - || (!$config && !$autoconf); # assume modversions if not known + if (0 + || $config=~/^CONFIG_MODVERSIONS=y\b/m + || $autoconf=~/^#define CONFIG_MODVERSIONS\b/m + || (!$config && !$autoconf)) { # assume modversions if not known + $cmdline.=" -DMODVERSIONS"; + $cmdline.=" -include $kernel/include/linux/version.h" + if -f "$kernel/include/linux/version.h"; + $cmdline.=" -include $kernel/include/linux/modversions.h"; + } my @objects=map({ my $o=$_; $o=~s/[.]c$/.o/; $o; } @sources); return !_system "set -e; /bin/mkdir -p `dirname $destmodule`; /bin/rm -f $destmodule;" @@ -218,9 +222,11 @@ my($kernel,$uname_r,$destmodule,%args)=@_; .($quiet ? ' &>/dev/null' : '') if !$args{"nodep"}; # Workaround a bug in at least Red Hat 2.4.18-18.8.0 - for ("$kernel/include/linux/modversions.h") { - _system "cp -p $_ $_-orig" if ! -f "$_-orig"; - _writefile $_,"#include \t/* lufs */\n"._readfile $_; + if (-f "$kernel/include/linux/version.h") { + for ("$kernel/include/linux/modversions.h") { + _system "cp -p $_ $_-orig" if ! -f "$_-orig"; + _writefile $_,"#include \t/* lufs */\n"._readfile $_; + } } my $cmdline="make -C $kernel" ." SUBDIRS=\"$predir\" modules" -- 1.8.3.1