[Cluster-devel] Fix for configure and kernel trees
Joel Becker
Joel.Becker at oracle.com
Thu Sep 27 22:30:21 UTC 2007
configure: Backticks don't work in strings. Use POSIX::uname().
The strings that use backticks to get `uname -r` don't work as expected.
Let's use POSIX::uname() directly and let perl do the work.
Index: configure
===================================================================
RCS file: /cvs/cluster/cluster/configure,v
retrieving revision 1.34
diff -u -u -r1.34 configure
--- configure 24 Sep 2007 14:43:13 -0000 1.34
+++ configure 27 Sep 2007 22:28:30 -0000
@@ -14,6 +14,7 @@
###############################################################################
use Getopt::Long;
+use POSIX qw(uname);
print "\nConfiguring Makefiles for your system...\n";
@@ -228,22 +229,25 @@
if (!$prefix) {
$prefix="/usr";
}
+
+my @un = POSIX::uname();
if (!$kernel_build) {
- if (-d "/lib/modules/`uname -r`/build") {
- $kernel_build="/lib/modules/`uname -r`/build";
+ printf("dir: \"%s\" \"%d\"\n", "/lib/modules/$un[2]/build", -d "/lib/modules/$un[2]/build");
+ if (-d "/lib/modules/$un[2]/build") {
+ $kernel_build="/lib/modules/$un[2]/build";
} else {
$kernel_build="/usr/src/linux";
}
}
if (!$kernel_src) {
- if (-d "/lib/modules/`uname -r`/source") {
- $kernel_src="/lib/modules/`uname -r`/source";
+ if (-d "/lib/modules/$un[2]/source") {
+ $kernel_src="/lib/modules/$un[2]/source";
} else {
$kernel_src=$kernel_build;
}
}
if (!$module_dir) {
- $module_dir="/lib/modules/`uname -r`/kernel";
+ $module_dir="/lib/modules/$un[2]/kernel";
}
if (!$gfskincdir) {
$gfskincdir="${pwd}/gfs-kernel/src/gfs";
--
Viro's Razor:
Any race condition, no matter how unlikely, will occur just
often enough to bite you.
Joel Becker
Principal Software Developer
Oracle
E-mail: joel.becker at oracle.com
Phone: (650) 506-8127
More information about the Cluster-devel
mailing list