Update of /cvsroot/fink/fink/perlmod/Fink In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15336/perlmod/Fink
Modified Files: Tag: dist-up-branch Bootstrap.pm ChangeLog Config.pm Engine.pm NetAccess.pm PkgVersion.pm SelfUpdate.pm Services.pm Validation.pm Log Message: Sync with HEAD and more updates, dist-upgrade almost works for changing trees 10.[23]->10.4-trans Index: PkgVersion.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/PkgVersion.pm,v retrieving revision 1.393.2.4 retrieving revision 1.393.2.5 diff -u -d -r1.393.2.4 -r1.393.2.5 --- PkgVersion.pm 11 May 2005 20:07:25 -0000 1.393.2.4 +++ PkgVersion.pm 17 May 2005 18:10:03 -0000 1.393.2.5 @@ -1479,6 +1479,8 @@ $oper = "dependency"; } + my $verbosity = $config->verbosity_level(); + @deplist = (); $idx = 0; @@ -1502,7 +1504,7 @@ # behavior differs from 'Depends'). # But right now, enabling conflicts would cause update problems (e.g. # when switching between 'wget' and 'wget-ssl') - if (Fink::Config::verbosity_level() > 2) { + if ($verbosity > 2) { print "Reading $oper for ".$self->get_fullname()."...\n"; } @speclist = split(/\s*\,\s*/, $self->pkglist_default($field, "")); @@ -1532,14 +1534,14 @@ } $package = Fink::Package->package_by_name($depname); $found = 1 if defined $package; - if ((Fink::Config::verbosity_level() > 2 && not defined $package) || ($forceoff && ($loopcount >= scalar(@altspec) && $found == 0))) { + if (($verbosity > 2 && not defined $package) || ($forceoff && ($loopcount >= scalar(@altspec) && $found == 0))) { print "WARNING: While resolving $oper \"$depspec\" for package \"".$self->get_fullname()."\", package \"$depname\" was not found.\n"; } if (not defined $package) { next BUILDDEPENDSLOOP; } - if (lc($field) eq "depends" && Fink::Config::verbosity_level() > 1) { + if (lc($field) eq "depends" && $verbosity > 1) { # only bother to check for BuildDependsOnly # violations if we are more verbose than default @@ -1564,7 +1566,7 @@ # now we continue to assemble the larger @speclist if ($include_build) { # Add build time dependencies to the spec list - if (Fink::Config::verbosity_level() > 2) { + if ($verbosity > 2) { print "Reading build $oper for ".$self->get_fullname()."...\n"; } push @speclist, split(/\s*\,\s*/, $self->pkglist_default("Build".$field, "")); @@ -1576,7 +1578,7 @@ $split_idx = @speclist; unless (lc($field) eq "conflicts") { foreach $splitoff ($self->parent_splitoffs) { - if (Fink::Config::verbosity_level() > 2) { + if ($verbosity > 2) { print "Reading $oper for ".$splitoff->get_fullname()."...\n"; } push @speclist, split(/\s*\,\s*/, $splitoff->pkglist_default($field, "")); @@ -1618,7 +1620,7 @@ $package = Fink::Package->package_by_name($depname); $found = 1 if defined $package; - if ((Fink::Config::verbosity_level() > 2 && not defined $package) || ($forceoff && ($loopcount >= scalar(@altspec) && $found == 0))) { + if (($verbosity > 2 && not defined $package) || ($forceoff && ($loopcount >= scalar(@altspec) && $found == 0))) { print "WARNING: While resolving $oper \"$depspec\" for package \"".$self->get_fullname()."\", package \"$depname\" was not found.\n"; } if (not defined $package) { @@ -1746,7 +1748,7 @@ my ($pkgname, $package, $version, $pkgversion); my ($found, @parts, $i, @vlist, $v, @rlist); - if (Fink::Config::verbosity_level() < 3) { + if ($config->verbosity_level() < 3) { $quiet = 1; } @@ -1896,14 +1898,14 @@ my $continue = shift || 0; my $dryrun = shift || 0; - if (Fink::Config::verbosity_level() > 2) { + if ($config->verbosity_level() > 2) { print "Downloading " . $self->get_debname() . " from binary dist.\n"; } my $aptcmd = aptget_lockwait() . " "; - if (Fink::Config::verbosity_level() == 0) { + if ($config->verbosity_level() == 0) { $aptcmd .= "-qq "; } - elsif (Fink::Config::verbosity_level() < 2) { + elsif ($config->verbosity_level() < 2) { $aptcmd .= "-q "; } if($dryrun) { @@ -2073,7 +2075,7 @@ $bdir = $self->get_fullname(); $verbosity = ""; - if (Fink::Config::verbosity_level() > 1) { + if ($config->verbosity_level() > 1) { $verbosity = "v"; } @@ -2686,7 +2688,7 @@ ### 3) replace it in the debian control file foreach my $shlib_dep (@shlib_deps) { push @$struct, ["$shlib_dep"]; - if (Fink::Config::verbosity_level() > 2) { + if ($config->verbosity_level() > 2) { print "- Adding $shlib_dep to 'Depends' line\n"; } } Index: Engine.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/Engine.pm,v retrieving revision 1.263.2.5 retrieving revision 1.263.2.6 diff -u -d -r1.263.2.5 -r1.263.2.6 --- Engine.pm 11 May 2005 20:07:23 -0000 1.263.2.5 +++ Engine.pm 17 May 2005 18:10:02 -0000 1.263.2.6 @@ -379,14 +379,7 @@ sub cmd_dist_upgrade { - require Fink::SelfUpdate; - &Fink::SelfUpdate::check(3); - &cmd_dist_upgrade_cont(); -} - -sub cmd_dist_upgrade -{ - unless Fink::Services::checkDistribution() + unless (Fink::Services::checkDistribution()) { print("FOO!!!!!"); print("Fink::Services::checkDistribution: " . Fink::Services::checkDistribution()) @@ -1296,10 +1289,10 @@ # Delete obsolete .deb files in $basepath/var/cache/apt/archives using # 'apt-get autoclean' my $aptcmd = aptget_lockwait() . " "; - if (Fink::Config::verbosity_level() == 0) { + if ($config->verbosity_level() == 0) { $aptcmd .= "-qq "; } - elsif (Fink::Config::verbosity_level() < 2) { + elsif ($config->verbosity_level() < 2) { $aptcmd .= "-q "; } if($dryrun) { @@ -1400,9 +1393,8 @@ : 'will be' ); - if (Fink::Config::verbosity_level() > -1) { - $showlist = 1; - } + my $verbosity = $config->verbosity_level(); + $showlist = 1 if $verbosity > -1; %deps = (); # hash by package name %cons = (); # hash by package name @@ -1513,7 +1505,7 @@ ($item->[OP] == $OP_REBUILD and not $item->[PKGVER]->is_installed())) { # We are building an item without going to install it # -> only include pure build-time dependencies - if (Fink::Config::verbosity_level() > 2) { + if ($verbosity > 2) { print "The package '" . $item->[PKGVER]->get_name() . "' $to_be built without being installed.\n"; } @deplist = $item->[PKGVER]->resolve_depends(2, "Depends", $forceoff); @@ -1523,7 +1515,7 @@ or $item->[OP] == $OP_REBUILD) { # We want to install this package and have to build it for that # -> include both life-time & build-time dependencies - if (Fink::Config::verbosity_level() > 2) { + if ($verbosity > 2) { print "The package '" . $item->[PKGVER]->get_name() . "' $to_be built and installed.\n"; } @deplist = $item->[PKGVER]->resolve_depends(1, "Depends", $forceoff); @@ -1532,7 +1524,7 @@ and $deb_from_binary_dist and $item->[PKGVER]->is_aptgetable()) { # We want to install this package and will download the .deb for it # -> only include life-time dependencies - if (Fink::Config::verbosity_level() > 2) { + if ($verbosity > 2) { print "The package '" . $item->[PKGVER]->get_name() . "' $to_be downloaded as a binary package and installed.\n"; } @deplist = $item->[PKGVER]->resolve_depends(0, "Depends", $forceoff); @@ -1542,7 +1534,7 @@ } else { # We want to install this package and already have a .deb for it # -> only include life-time dependencies - if (Fink::Config::verbosity_level() > 2) { + if ($verbosity > 2) { print "The package '" . $item->[PKGVER]->get_name() . "' $to_be installed.\n"; } @deplist = $item->[PKGVER]->resolve_depends(0, "Depends", $forceoff); @@ -2068,9 +2060,9 @@ &cmd_scanpackages(1); print "Updating the indexes of available binary packages.\n"; my $aptcmd = "$basepath/bin/apt-get "; - if (Fink::Config::verbosity_level() == 0) { + if ($verbosity == 0) { $aptcmd .= "-qq "; - } elsif (Fink::Config::verbosity_level() < 2) { + } elsif ($verbosity < 2) { $aptcmd .= "-q "; } if (&execute($aptcmd . "update")) { Index: Config.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/Config.pm,v retrieving revision 1.45.2.2 retrieving revision 1.45.2.3 diff -u -d -r1.45.2.2 -r1.45.2.3 --- Config.pm 11 May 2005 20:07:23 -0000 1.45.2.2 +++ Config.pm 17 May 2005 18:10:02 -0000 1.45.2.3 @@ -35,7 +35,7 @@ our @ISA = qw(Exporter Fink::Base); our @EXPORT_OK = qw($config $basepath $libpath $debarch $buildpath $dbpath $distribution $ignore_errors - get_option set_options verbosity_level + get_option set_options ); our $VERSION = 1.00; @@ -529,33 +529,71 @@ =item verbosity_level - my $level = verbosity_level; + my $level = $config->verbosity_level(); -Determine the current verbosity level. This is affected by the ---verbose and --quiet command line options as well as by the "Verbose" -setting in fink.conf. +Return the current verbosity level as a value 0-3, where 0 is the +quietest. This is affected by the --verbose and --quiet command line +options as well as by the "Verbose" setting in fink.conf. A --quiet +always takes precedence; otherwise the more verbose of the fink.conf +and cmdline values is used. The former documentation here described +the values as: + +=over 4 + +=item 3 + +full + +=item 2 + +download and tarballs + +=item 1 + +download + +=item 0 + +none + +=back =cut +{ + +my %verb_names = ( + true => 3, + high => 3, + medium => 2, + low => 1, +); + sub verbosity_level { - my $verblevel = $config->param_default("Verbose", 1); - my $verbosity = get_option("verbosity"); + my $self = shift; - if ($verbosity != -1 && ($verbosity >= 3 || $verblevel =~ /([3-9]|true|high)/)) { - ### Sets Verbose mode to Full - $verbosity = 3; - } elsif ($verbosity != -1 && $verblevel eq "2" || $verblevel eq "medium") { - ### Sets Verbose mode to download and tarballs - $verbosity = 2; - } elsif ($verbosity != -1 && $verblevel eq "1" || $verblevel eq "low") { - ### Sets Verbose mode to download - $verbosity = 1; - } else { - ### Sets Verbose mode to none - $verbosity = 0; + # fink.conf field (see Configure.pm) + my $verbosity = $self->param_default("Verbose", 1); + + # cmdline flags (see fink.in) + my $runtime = get_option("verbosity"); + + return 0 if $runtime == -1; + + # convert keywords to values (or 0 if keyword is bogus) + if ($verbosity =~ /\D/) { + $verbosity = exists $verb_names{lc $verbosity} ? $verb_names{lc $verbosity} : 0; } + + # take higher value (== more verbose) of fink.conf and cmdline + $verbosity = $runtime if $runtime > $verbosity; + + # sanity check: don't exceed maximum known value + $verbosity = 3 if $verbosity > 3; + return $verbosity; } +} =item binary_requested Index: Validation.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/Validation.pm,v retrieving revision 1.176.2.2 retrieving revision 1.176.2.3 diff -u -d -r1.176.2.2 -r1.176.2.3 --- Validation.pm 11 May 2005 20:07:27 -0000 1.176.2.2 +++ Validation.pm 17 May 2005 18:10:05 -0000 1.176.2.3 @@ -303,7 +303,7 @@ my $error_found = 0; my $arch = get_arch(); - if (Fink::Config::verbosity_level() >= 3) { + if ($config->verbosity_level() >= 3) { print "Validating package file $filename...\n"; } @@ -733,7 +733,7 @@ } } - if ($looks_good and Fink::Config::verbosity_level() >= 3) { + if ($looks_good and $config->verbosity_level() >= 3) { print "Package looks good!\n"; } @@ -1105,7 +1105,7 @@ } } - if ($looks_good and Fink::Config::verbosity_level() >= 3) { + if ($looks_good and $config->verbosity_level() >= 3) { print "Package looks good!\n"; } Index: NetAccess.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/NetAccess.pm,v retrieving revision 1.40.4.2 retrieving revision 1.40.4.3 diff -u -d -r1.40.4.2 -r1.40.4.3 --- NetAccess.pm 11 May 2005 20:07:25 -0000 1.40.4.2 +++ NetAccess.pm 17 May 2005 18:10:03 -0000 1.40.4.3 @@ -329,7 +329,7 @@ # check if we have curl if (-x "$basepath/bin/curl" or -x "/usr/bin/curl") { $cmd = "curl -f -L"; - if (Fink::Config::verbosity_level() == 0) { + if ($config->verbosity_level() == 0) { $cmd .= " -s -S"; } if (not $config->param_boolean("ProxyPassiveFTP")) { @@ -349,7 +349,7 @@ if ((!$cmd or $config->param_default("DownloadMethod") eq "wget") and (-x "$basepath/bin/wget" or -x "/usr/bin/wget")) { $cmd = "wget"; - if (Fink::Config::verbosity_level() >= 1) { + if ($config->verbosity_level() >= 1) { $cmd .= " --verbose"; } else { $cmd .= " --non-verbose"; @@ -373,7 +373,7 @@ if ($config->param_default("DownloadMethod") eq "axelautomirror") { $cmd = "axel -S 1"; } - if (Fink::Config::verbosity_level() >= 1) { + if ($config->verbosity_level() >= 1) { $cmd .= " --verbose"; } if ($file ne &filename($url)) { Index: ChangeLog =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/ChangeLog,v retrieving revision 1.958.2.4 retrieving revision 1.958.2.5 diff -u -d -r1.958.2.4 -r1.958.2.5 --- ChangeLog 11 May 2005 20:07:16 -0000 1.958.2.4 +++ ChangeLog 17 May 2005 18:10:00 -0000 1.958.2.5 @@ -1,3 +1,16 @@ +2005-05-16 Daniel Macks <[EMAIL PROTECTED]> + + * *: verbosity_level() is now a $config object method + +2005-05-16 Daniel Macks <[EMAIL PROTECTED]> + + * Config.pm: Refactor and make a more coherent verbosity_level + +2005-05-14 Dave Vasilevsky <[EMAIL PROTECTED]> + + * Bootstrap.pm: Disable copyfile when creating tarballs (otherwise we get + nasty dot-underscore files if we expand them with Fink's tar). + 2005-05-11 Dave Morrison <[EMAIL PROTECTED]> (thanks to msachs) * PkgVersion.pm: better checking for SetCXX Index: Services.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/Services.pm,v retrieving revision 1.158.2.7 retrieving revision 1.158.2.8 diff -u -d -r1.158.2.7 -r1.158.2.8 --- Services.pm 11 May 2005 20:07:27 -0000 1.158.2.7 +++ Services.pm 17 May 2005 18:10:05 -0000 1.158.2.8 @@ -1191,7 +1191,7 @@ =item get_osx_vers - my $os_x_version = get_osx_vers; + my $os_x_version = get_osx_vers(); Returns OS X major and minor versions (if that's what this platform appears to be, as indicated by being able to run /usr/bin/sw_vers). @@ -1206,13 +1206,13 @@ my $sw_vers = get_osx_vers_long(); my $darwin_osx = get_darwin_equiv(); $sw_vers =~ s/^(\d+\.\d+).*$/$1/; - ($sw_vers == $darwin_osx) or die "$sw_vers does not match the expected value of $darwin_osx. Please run `fink selfupdate` to download a newer version of fink"; + ($sw_vers == $darwin_osx) or exit "$sw_vers does not match the expected value of $darwin_osx. Please run `fink selfupdate` to download a newer version of fink"; return $sw_vers; } =item get_osx_vers_long - my $os_x_version = get_osx_vers_long; + my $os_x_version = get_osx_vers_long(); Returns full OS X version (if that's what this platform appears to be, as indicated by being able to run /usr/bin/sw_vers). The output of that @@ -1260,17 +1260,18 @@ sub get_kernel_vers_long { (my $darwin_version = lc((uname())[2])); - return $darwin_version + return $darwin_version; } sub get_system_version { - if get_osx_vers() + if (get_osx_vers()) { return get_osx_vers(); } else { return get_darwin_equiv(); } +} sub checkDistribution { @@ -1677,4 +1678,3 @@ ### EOF 1; -# vim: ts=4 sw=4 noet Index: Bootstrap.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/Bootstrap.pm,v retrieving revision 1.97.2.3 retrieving revision 1.97.2.4 diff -u -d -r1.97.2.3 -r1.97.2.4 --- Bootstrap.pm 11 May 2005 20:07:15 -0000 1.97.2.3 +++ Bootstrap.pm 17 May 2005 18:10:00 -0000 1.97.2.4 @@ -651,6 +651,10 @@ $script .= "mkdir -p $bpath/src\n"; } + # Don't allow Apple's tar to use copyfile + my %env_bak = %ENV; + $ENV{COPY_EXTENDED_ATTRIBUTES_DISABLE} = 1; + $script .= "tar -cf $bpath/src/$package-$packageversion.tar $packagefiles\n"; @@ -664,6 +668,8 @@ $result = 1; } } + + %ENV = %env_bak; return $result; } Index: SelfUpdate.pm =================================================================== RCS file: /cvsroot/fink/fink/perlmod/Fink/SelfUpdate.pm,v retrieving revision 1.92.2.2 retrieving revision 1.92.2.3 diff -u -d -r1.92.2.2 -r1.92.2.3 --- SelfUpdate.pm 11 May 2005 20:07:27 -0000 1.92.2.2 +++ SelfUpdate.pm 17 May 2005 18:10:05 -0000 1.92.2.3 @@ -58,18 +58,11 @@ sub check { my $useopt = shift || 0; - my ($srcdir, $finkdir, $latest_fink, $installed_version, $answer, $dist_upgrade); + my ($srcdir, $finkdir, $latest_fink, $installed_version, $answer); $srcdir = "$basepath/src"; $finkdir = "$basepath/fink"; - # Take note if dist-upgrade being done, reset $useopt to 0 - if ($useopt = 3) - { - $dist_upgrade = 1; - $useopt = 0; - } - if ($useopt != 0) { &print_breaking("\n Please note: the command 'fink selfupdate' " . "should be used for routine updating; you only need to use " @@ -193,7 +186,6 @@ &execute("/usr/bin/find $finkdir -name CVS -type d -print0 | xargs -0 /bin/rm -rf"); } &do_tarball($latest_fink); - &do_finish($dist_upgrade); } } @@ -268,7 +260,7 @@ # add cvs quiet flag if verbosity level permits my $verbosity = "-q"; - if (Fink::Config::verbosity_level() > 1) { + if ($config->verbosity_level() > 1) { $verbosity = ""; } my $cvsrepository = "cvs.sourceforge.net"; @@ -376,7 +368,7 @@ # add cvs quiet flag if verbosity level permits my $verbosity = "-q"; - if (Fink::Config::verbosity_level() > 1) { + if ($config->verbosity_level() > 1) { $verbosity = ""; } @@ -452,7 +444,7 @@ } $verbosity = ""; - if (Fink::Config::verbosity_level() > 1) { + if ($config->verbosity_level() > 1) { $verbosity = "v"; } $unpack_cmd = "tar -xz${verbosity}f $pkgtarball"; @@ -481,10 +473,10 @@ if ($config->binary_requested()) { print "Downloading the indexes of available packages in the binary distribution.\n"; my $aptcmd = aptget_lockwait() . " "; - if (Fink::Config::verbosity_level() == 0) { + if ($config->verbosity_level() == 0) { $aptcmd .= "-qq "; } - elsif (Fink::Config::verbosity_level() < 2) { + elsif ($config->verbosity_level() < 2) { $aptcmd .= "-q "; } $aptcmd .= "update"; @@ -512,23 +504,12 @@ { Fink::Engine::cmd_install("fink"); - if ($useopt) - { - # re-execute ourselves before we update the rest - print "Re-executing fink to use the new version...\n"; - exec "$basepath/bin/fink dist-upgrade-cont"; - - # the exec doesn't return, but just in case... - die "re-executing fink failed, run `fink dist-upgrade-cont` manually\n"; - - } else { # re-execute ourselves before we update the rest print "Re-executing fink to use the new version...\n"; exec "$basepath/bin/fink selfupdate-finish"; # the exec doesn't return, but just in case... die "re-executing fink failed, run 'fink selfupdate-finish' manually\n"; - } } } @@ -573,7 +554,7 @@ # add rsync quiet flag if verbosity level permits my $verbosity = "-q"; my $nohfs =""; - if (Fink::Config::verbosity_level() > 1) { + if ($config->verbosity_level() > 1) { $verbosity = "-v"; } if (system("rsync -help 2>&1 | grep 'nohfs' >/dev/null") == 0) { ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_id=7412&alloc_id=16344&op=click _______________________________________________ Fink-commits mailing list Fink-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/fink-commits