CVSROOT: /cvs/cluster Module name: cluster Changes by: [EMAIL PROTECTED] 2007-12-21 07:28:37
Modified files: . : configure Log message: Minor objdir rework to extend flexibility. the first shot of objdir implementation implied that you did: cd cluster ./configure --objdir... etc. cd /path/to/objdir make now you can: mkdir objdir cd objdir /path/to/configure make NOTE: in this case you don't need to specify objdir. it will be automatically set up for you. As a nice side effect you can also be anywhere on the fs and do: /path/to/configure --objdir=/path/to/obj cd /path/to/obj make and it will work. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/configure.diff?cvsroot=cluster&r1=1.44&r2=1.45 --- cluster/configure 2007/12/21 05:58:34 1.44 +++ cluster/configure 2007/12/21 07:28:37 1.45 @@ -296,7 +296,7 @@ $dirname = dirname($_); $filename = basename($_); system("mkdir -p $objdir/$dirname"); - symlink("${pwd}/$_","$objdir/$dirname/$filename"); + symlink("${cdir}/$_","$objdir/$dirname/$filename"); } close IFILE; return 0; @@ -330,22 +330,27 @@ $prefix="/usr"; } +print "\nChecking tree: "; if (!$objdir) { $objdir="${pwd}"; +} +$objdir = abs_path( $objdir ); +$cdir = dirname ( abs_path( $0 ) ); +unless ("$cdir" eq "$objdir") { + chdir "$cdir"; +} + +if (! -d "$objdir/make") { + print "setting up $objdir\n"; + mkdir "$objdir"; + symlinks(".","Makefile"); + symlinks(".","*.mk"); + symlinks("gnbd-kernel","*.c"); + symlinks("gnbd-kernel","*.h"); + symlinks("gfs-kernel","*.c"); + symlinks("gfs-kernel","*.h"); } else { - $objdir = abs_path( $objdir ); - if (! -d $objdir) { - print "\nSetting up objdir in $objdir\n"; - mkdir "$objdir"; - symlinks(".","Makefile"); - symlinks(".","*.mk"); - symlinks("gnbd-kernel","*.c"); - symlinks("gnbd-kernel","*.h"); - symlinks("gfs-kernel","*.c"); - symlinks("gfs-kernel","*.h"); - } else { - print "\nFound old objdir in $objdir: no actions taken\n"; - } + print "nothing to do\n"; } my @un = POSIX::uname(); @@ -370,10 +375,10 @@ $module_dir="/lib/modules/$un[2]/kernel"; } if (!$gfskincdir) { - $gfskincdir="${pwd}/gfs-kernel/src/gfs"; + $gfskincdir="${cdir}/gfs-kernel/src/gfs"; } if (!$gnbdkincdir) { - $gnbdkincdir="${pwd}/gnbd-kernel/src"; + $gnbdkincdir="${cdir}/gnbd-kernel/src"; } if (!$incdir) { $incdir="${prefix}/include"; @@ -382,19 +387,19 @@ $libdir="${prefix}/lib"; } if (!$ccsincdir) { - $ccsincdir="${pwd}/ccs/lib"; + $ccsincdir="${cdir}/ccs/lib"; } if (!$ccslibdir) { $ccslibdir="${objdir}/ccs/lib"; } if (!$cmanincdir) { - $cmanincdir="${pwd}/cman/lib"; + $cmanincdir="${cdir}/cman/lib"; } if (!$cmanlibdir) { $cmanlibdir="${objdir}/cman/lib"; } if (!$dlmincdir) { - $dlmincdir="${pwd}/dlm/lib"; + $dlmincdir="${cdir}/dlm/lib"; } if (!$dlmlibdir) { $dlmlibdir="${objdir}/dlm/lib"; @@ -538,7 +543,7 @@ while (<IFILE>) { chomp; - $_ =~ s/[EMAIL PROTECTED]@/$pwd/; + $_ =~ s/[EMAIL PROTECTED]@/$cdir/; $_ =~ s/[EMAIL PROTECTED]@/$cc/; $_ =~ s/[EMAIL PROTECTED]@/$cflags/; $_ =~ s/[EMAIL PROTECTED]@/$ldflags/;